中易网

vb按钮如何设置快捷键,

答案:5  悬赏:30  
解决时间 2021-01-17 13:41
  • 提问者网友:溺爱和你
  • 2021-01-17 02:09
vb按钮如何设置快捷键,
最佳答案
  • 二级知识专家网友:忘川信使
  • 2021-01-17 02:39
设置VB窗体中按扭快捷键的操作可以采用下面两种方法来实现:
1、在按扭的Capion 属性设置标题的时候,前面增加 "&K"字符就可以,K代表的是你准备使用的Alt+键盘字符,如“&O.退出”,程序运行的时候按下 Alt+O 即执行该按扭的操作了
2、你可以利用该按扭所在的Form 窗体优先权获得键盘操作功能来激发你要完成的按扭操作,此时首先要设置Form 的KeyPreview 属性值为 True,然后在 Form中KeyDown事件中判断你需要的组合键盘值来激发你的按扭事件.
Form_KeyDown事件中的各功能键值组合比较全面,如Shift,Alt 及Ctr等,一般都能满足快捷键的组合需求了.
Exp:
利用Ctrl+O组合键激发上面所说的按扭键,在Form_KeyDown事件中添加如下代码
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

If Shift = 2 And KeyCode = 79 Then
btnQuit_Click()
End If

End Sub
btnQuit_Click()是退出程序按扭事件
追问:不要组合的
追答:如果不需要组合键的话,可以在 Form_KeyPress()事件中来判断需要的键盘值.
Exp:
想用键盘值[K]控制窗体上的一个按扭 Command2_Click()事件
Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = 107 Then '键盘K的Ascii码值=107
Call Command2_Click()
End If

End Sub
全部回答
  • 1楼网友:我住北渡口
  • 2021-01-17 05:52
用菜单编辑器就可以了。
快捷键设置后,在菜单按钮的click事件下编写:
form1.visible=true
  • 2楼网友:纵马山川剑自提
  • 2021-01-17 05:19
设置快捷键 要定义 key.ini(键值对) 这样配置文件,例如
开始=45
快跑=46
....类似这样的,然后45,46是 字母对应的ASCII码表。
  • 3楼网友:不甚了了
  • 2021-01-17 04:10
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Private Sub Form_Load()
Timer1.Interval = 300 '设定检测间隔
End Sub
Private Sub Timer1_Timer()
If GetAsyncKeyState(vbKeyQ) Then ' 判断你需要的快捷键是否按下,这里使用“Q”
Call Command1_click '按下按钮
Else
End If
End Sub
 
 
 
还有第二种方法Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) 
If KeyCode = vbKey1  Then ‘按下1键
Call Command1_Click 
end if 
End Sub
注意这是form的keydown事件,要求form必须具有焦点
请参考,采纳,谢谢
追问:用不了 怎么办。?
追答:Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Private Sub Command1_Click()
MsgBox "Command1被按下"
End Sub
Private Sub Form_Load()
Timer1.Interval = 300 '设定检测间隔
End Sub
Private Sub Timer1_Timer()
If GetAsyncKeyState(vbKeyQ) Then ' 判断按键Q
Call Command1_Click
Else
End If
End Sub
 

追问:
你看

这是为什么?
追答:
我找到问题了。。。。是因为你的Command1 下没有写任何东西。。。
缺少下面的语句
Private Sub Command1_Click()
MsgBox "COMMAND1被按下"
End Sub
追问:如何设置其他的快捷键???
  • 4楼网友:蓝房子
  • 2021-01-17 03:18
'给你举个简单的例子
Private Sub Form_Load()
    Command1.Caption = "我是Q的快捷键&Q"    '你可以把&后面的字母改成你需要快捷键的字母
End Sub
Private Sub Command1_Click()
 MsgBox "你按了Ait+Q"
End Sub
'请参考采纳!谢谢!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息