开始我想的挺简单,以为用一个timer控件,设定一个时间点击就好了!试了一下不知怎么弄
我想在WINXP系统任何程序下,实现按键盘方向键,每隔几秒中按一下
我用VB6标准窗体试了一下
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Private Sub Timer1_Timer()
从这我以为给Keycode附值(方向左键为37,)就行呢!
End Sub
请给指出错误,谢谢!!
开始我想的挺简单,以为用一个timer控件,设定一个时间点击就好了!试了一下不知怎么弄
我想在WINXP系统任何程序下,实现按键盘方向键,每隔几秒中按一下
我用VB6标准窗体试了一下
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Private Sub Timer1_Timer()
从这我以为给Keycode附值(方向左键为37,)就行呢!
End Sub
请给指出错误,谢谢!!
哦,原来你是想要这样的效果。那么你就在 Timer 中写触发 Form_KeyDown 事件的代码吧。
Private Sub Timer1_Timer()
Form_KeyDown 37, 0
End Sub
[此贴子已经被作者于2006-1-15 22:00:55编辑过]
这个就不能依靠 Form_KeyDown 了,得用 API 函数。
Option Explicit
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long) '一个可以实现模仿敲键的 API 函数,第一个参数指明按键的虚拟码,第三个参数指明的是按键的方式,其他的参数都不太重要
Private Const VK_LEFT = &H25 '表示"左箭头键",VK 是虚拟(Virtual)码的意思
Private Const KF_UP = &H8000 '表示"放开按键"
Private Sub Form_Load()
Timer1.Interval = 500 '每半秒触发一次 Timer 事件,即每半秒按一次键
End Sub
Private Sub Timer1_Timer()
keybd_event VK_LEFT, 0, 0, 0 '按下箭头键,第二个"0"表示"按下"
keybd_event VK_LEFT, 0, KF_UP, 0 '放开下箭头键
End Sub