vb.net中使用sendkeys无效?
我用的是VS2005vb编程我想使用数字软键盘输入用户名和密码(都是数字),代码如下PrivateSubbtn1_Click(ByValsenderAsSystem.Ob...
我用的是VS 2005 vb编程
我想使用数字软键盘输入用户名和密码(都是数字),代码如下
Private Sub btn1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn1.Click
System.Windows.Forms.SendKeys.Send("1")
End Sub
在运行时,光标停在textbox里点击了btn1(两个都在一个form里),可是却没有任何反应,textbox里没有显示1,而且光标的位置也不再textbox里了.
是不是用sendkeys需要什么条件?还是我的用法有错误?希望高手指点下,谢谢! 展开
我想使用数字软键盘输入用户名和密码(都是数字),代码如下
Private Sub btn1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn1.Click
System.Windows.Forms.SendKeys.Send("1")
End Sub
在运行时,光标停在textbox里点击了btn1(两个都在一个form里),可是却没有任何反应,textbox里没有显示1,而且光标的位置也不再textbox里了.
是不是用sendkeys需要什么条件?还是我的用法有错误?希望高手指点下,谢谢! 展开
3个回答
展开全部
vb.net中使用sendkeys无效,是因为窗口没有处于活动状态。
VB6的SendKeys有时有些问题,比如打开任务管理器,以下代码可以:
Sub main()
Dim WshShell As Object
Set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "^+{ESC}"
End Sub
以下代码却不可以:
Sub main()
SendKeys "^+{ESC}"
End Sub
所以最好使用WScript.Shell中的SendKeys。
VB6的SendKeys有时有些问题,比如打开任务管理器,以下代码可以:
Sub main()
Dim WshShell As Object
Set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "^+{ESC}"
End Sub
以下代码却不可以:
Sub main()
SendKeys "^+{ESC}"
End Sub
所以最好使用WScript.Shell中的SendKeys。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这样试试SendKeys.Send("{1}")
还有,就是光标的问题,光标不在那,你发了也没用,先用 textbox.Focus() 这个函数名不知道对不对,你点了看是不是这个,先设置焦点,然后再发送键值
还有,就是光标的问题,光标不在那,你发了也没用,先用 textbox.Focus() 这个函数名不知道对不对,你点了看是不是这个,先设置焦点,然后再发送键值
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这样试试SendKeys.Send("{1}")。
还有,就是光标的问题,光标不在那,发了也没用,先用 textbox.Focus() 这个函数名不知道对不对,点了看是不是这个,先设置焦点,然后再发送键值。
还有,就是光标的问题,光标不在那,发了也没用,先用 textbox.Focus() 这个函数名不知道对不对,点了看是不是这个,先设置焦点,然后再发送键值。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询