Windows Mobile6.1中如何设置键盘输入状态?

wwhhg 2010-04-25 09:02:32
如题,写WM6.1的应用程序,用的全键盘手机,有两个TextBox控件只允许输入数字,全键盘手机输入数字时需要按两下切换键(类似台式机键盘上的shift键的东东)才能进入数字输入状态,但是在转到下一个TextBox控件时又变成了英文字符输入状态。想在只允许输入数字的TextBox控件取得焦点时自动打开数字输入状态,请问应该怎样操作?本来想用Sendkeys,但好像不支持。
请各位多多指教,先谢了!
...全文
187 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
potency 2010-12-28
  • 打赏
  • 举报
回复
就是像这样的笨蛋,只允许输入数字。你不知道拨号状态输入中,需要输入P的啊?吗的,我的输入不了,只能输入数字,害得我白买了个手机,因为我们IP正好要输入P的。
wwhhg 2010-05-09
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 wwhhg 的回复:]
引用 4 楼 wuyazhe 的回复:
确实没有,我看来昨天第一次回复时候新建的项目弄错了。我没遇到这个问题,我是自己做的软键盘,帮你搜索了一下答案。也许能有点帮助。
如何在Smartphone程序中切换输入法?

看明白了,漏掉了两行
Private Declare Function GetCapture Lib "coredll.dll" () As IntPtr
Pr……
[/Quote]
失败,搞不定。。。另外还有一个新问题,wm6里面的listview控件如何设置滚动条的位置啊?没有EnsureVisible()方法,好像也只能通过响应wm_vscroll来实现,看到的例子全是VC的,VB应该怎么做啊?请各位高手多多指点啊,研究了快两个星期了。。。
wwhhg 2010-04-28
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wuyazhe 的回复:]
确实没有,我看来昨天第一次回复时候新建的项目弄错了。我没遇到这个问题,我是自己做的软键盘,帮你搜索了一下答案。也许能有点帮助。
如何在Smartphone程序中切换输入法?
[/Quote]
看明白了,漏掉了两行
Private Declare Function GetCapture Lib "coredll.dll" () As IntPtr
Private Declare Function GetWindow Lib "coredll.dll" (ByVal hWnd As IntPtr, ByVal uCmd As Integer) As IntPtr
手机放单位了,等拿回来试试看。没问题就结贴。再次感谢!
wwhhg 2010-04-28
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wuyazhe 的回复:]
确实没有,我看来昨天第一次回复时候新建的项目弄错了。我没遇到这个问题,我是自己做的软键盘,帮你搜索了一下答案。也许能有点帮助。
如何在Smartphone程序中切换输入法?
[/Quote]
先多谢了!
看了一下是使用coredll.dll下的SendMessage函数,找到一个例子:
Public Shared Sub SetInputMode(ByVal ctrl As Control, ByVal mode As InputMode)
ctrl.Capture = True
Dim h As IntPtr = GetCapture()
ctrl.Capture = False
Dim hEditbox As IntPtr = GetWindow(h, GW_CHILD)
SendMessage(hEditbox, 222, 0, 2)
End Sub
我VB也不大懂得,里面GetCapture()和GetWindow()都报错未声明的,不知道应该怎么修改?
兔子-顾问 2010-04-27
  • 打赏
  • 举报
回复
确实没有,我看来昨天第一次回复时候新建的项目弄错了。我没遇到这个问题,我是自己做的软键盘,帮你搜索了一下答案。也许能有点帮助。
如何在Smartphone程序中切换输入法?
兔子-顾问 2010-04-26
  • 打赏
  • 举报
回复
smartphone么?
试试TextBox的IMEMODE属性。
兔子-顾问 2010-04-26
  • 打赏
  • 举报
回复
这个是.net cf支持的属性哦。怎么会和操作系统有关呢?.net cf 2.1,3.5都有这个属性的哦。家里电脑只有2010,没办法帮你验证到底有没有。如果你明天还没结贴,上班后用05,08确认一下再回复你。
wwhhg 2010-04-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wuyazhe 的回复:]
smartphone么?
试试TextBox的IMEMODE属性。
[/Quote]
WM6.1程序的TextBox控件没有IMEMODE属性。。。。。。

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧