用定时器限定了时间,到时间后设定一个变量为start=1
Private Sub form_KeyPress(keyAscii As Integer)
If start=1 then
If keyAscii = vbKeyF Then
response = 1
ElseIf keyAscii = vbKeyJ Then
response = 2
Else
response = 0
End If
end if
end sub这样只能对一次按键起反应,而且提前按键的话没法排除能不能用vb对多次按键起反应,而且还是限定条件、时间下的按键
Private Sub form_KeyPress(keyAscii As Integer)
If start=1 then
If keyAscii = vbKeyF Then
response = 1
ElseIf keyAscii = vbKeyJ Then
response = 2
Else
response = 0
End If
end if
end sub这样只能对一次按键起反应,而且提前按键的话没法排除能不能用vb对多次按键起反应,而且还是限定条件、时间下的按键
就是我没法用keypress接受两次不同时间的按键反应
vb还有什么办法可以处理按键吗
是按了一次,第二次就不触发事件了吗?
可用keydown和keyup处理按键,楼主试试
第二次与第一次中间有其他的操作,进行完之后,然后才能接受第二次按键,
结果是第一次按键后程序就停住了,是不是没法从keypress事件中先跳出来?
但是貌似一个窗体不能写两个Private Sub form_KeyPress(keyAscii As Integer)强人教教我怎么做
你keypress在哪调用的?
键盘输入?
看你定时器似乎是控制某个时间键盘输入有效,那可以在设一个变量判断是否可以接收第二次按键了