用VB编写一个在任何情况下,按ENTER键都相当于单击“是”按钮,按ESC键都相当于单击“否”按钮
3个回答
展开全部
'添加一个timer 两个command
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Long
Private Sub Command1_Click()
Me.Caption = "是"
End Sub
Private Sub Command2_Click()
Me.Caption = "否"
End Sub
Private Sub Form_Load()
Timer1.Interval = 100
End Sub
Private Sub Timer1_Timer()
If GetAsyncKeyState(vbKeyReturn) Then '检查是否热键被按下,这里是按下回车
Command1_Click
End If
If GetAsyncKeyState(vbKeyEscape) Then 'ESC
Command2_Click
End If
End Sub
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Long
Private Sub Command1_Click()
Me.Caption = "是"
End Sub
Private Sub Command2_Click()
Me.Caption = "否"
End Sub
Private Sub Form_Load()
Timer1.Interval = 100
End Sub
Private Sub Timer1_Timer()
If GetAsyncKeyState(vbKeyReturn) Then '检查是否热键被按下,这里是按下回车
Command1_Click
End If
If GetAsyncKeyState(vbKeyEscape) Then 'ESC
Command2_Click
End If
End Sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
回车键没有keycode啊。。。 把回车键换成其他键比如空格的话。。。
在每一个可能获得焦点的控件的keydown事件中,写入:
call yn
yn过程如下:
private sub yn
if keycode=32 then
call cmdyes_click
elseif keycode=27 then
call cmdno_click
end if
end sub
在每一个可能获得焦点的控件的keydown事件中,写入:
call yn
yn过程如下:
private sub yn
if keycode=32 then
call cmdyes_click
elseif keycode=27 then
call cmdno_click
end if
end sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询