button设置快捷键 问题

yuyanping1982 2008-02-22 03:19:46
vb.net中我想按下F1键时执行button_click事件应该怎样做才能实现啊
...全文
154 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
机器人 2008-02-22
  • 打赏
  • 举报
回复
paulin 的就OK,不过Form.KeyPreview要设为True
wangfeng12345678 2008-02-22
  • 打赏
  • 举报
回复

Public Class Form1

Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean
Const WM_KEYDOWN As Integer = &H100
Const WM_SYSKEYDOWN As Integer = &H104
If ((msg.Msg = WM_KEYDOWN) Or (msg.Msg = WM_SYSKEYDOWN)) Then
Select Case (keyData)
Case Keys.F1
Call Button1_Click(Button1, EventArgs.Empty)
End Select
End If
Return MyBase.ProcessCmdKey(msg, keyData)
End Function

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
MsgBox("F1")
End Sub

End Class
zy227 2008-02-22
  • 打赏
  • 举报
回复
结帖!!!!!
paulin 2008-02-22
  • 打赏
  • 举报
回复

Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown


Select Case e.KeyCode
Case Keys.KeyCode.F1
Button1.PerformClick()
End Select
End Sub
「已注销」 2008-02-22
  • 打赏
  • 举报
回复
override FORM的ProcessCmdKey方法。
「已注销」 2008-02-22
  • 打赏
  • 举报
回复
加个键盘监听。然后把事件委托过去就OK啦。

16,556

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧