visualbasic(vb.net)中按下键盘上某个按键事件触发(以回车键为例)的应用场景
最近写程序遇到一个问题,
几个查询条件+一个按钮,
用户在选好(填好)查询条件后都需要点击按钮才能触发事件进行搜索,
我就想有没有办法此时可以按下“回车键”进行查询。
visualbasic(vb.net)中按下键盘上某个按键事件触发(以回车键为例)的解决方法
后面发现两种情况,
如果按钮是获得焦点的,
那么可以直接用下面的代码实现:
Private Sub Button1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Button1.KeyDown If e.KeyCode = Keys.Enter Then MsgBox("你按下了回车键!") End If End Sub
但是存在一个问题,
就是我们并不能保证这个按钮获得了焦点,
所以这边想到另外一个重载的方法:
Public Class Form1 Public Sub New() MyBase.New() MyBase.KeyPreview = True '在此加入下面这句话,使在窗口中任何的按键都只执行一个响应 InitializeComponent() End Sub Protected Overrides Sub OnKeyPress(ByVal e As System.Windows.Forms.KeyPressEventArgs) Dim key As String = e.KeyChar If key = Microsoft.VisualBasic.ChrW(13) Then '若按下回车键 Button1.Focus() '把焦点附给button1 Button1.PerformClick() '执行Click命令 End If End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click MsgBox("你按下了回车键!") End Sub End Class
这样就能实现即使焦点是在添加条件的控件上,
单击回车键,也可以触发查询。
您可能感兴趣的文章
- visual basic(vb.net)中运用两表之间的相同字段实现数据在表间流转
- JavaScript中返回值出现undefined的几种可能
- visual basic(vb.net)中引用vlc进行播放器开发专题——vlc控件的引入
- visual basic(vb.net)中如何获取桌面路径
- visual basic(vb.net)中如何通过启用事务操作同一服务器上的不同SQLserver数据库
- 关于Visual Studio打开解决方案会版本不对应(总是以最新版的Visual Studio打开)的问题
- vb.net中如何将一个32位的数转换为两个16位的数,并且再转换回来?
- visualbasic(vb.net)中进行post、get方法学习,如何对弹出的新网页使用浏览器自带的开发者工具抓包
本文地址:https://www.huazai186.com/post/43.html
文章标签:
版权声明:本文为原创文章,版权归 羽化飞翔 所有,欢迎分享本文,转载请保留出处!此外,本网站旨在向广大网友提供任何资源的开发、使用、安装教程,所提供的下载服务仅供学习交流探讨,请广大网友学习完成后,24小时内删除相关资源。如果涉及到侵犯版权事宜,请联系删除资源下载信息,谢谢各位的理解与支持!
文章标签:
版权声明:本文为原创文章,版权归 羽化飞翔 所有,欢迎分享本文,转载请保留出处!此外,本网站旨在向广大网友提供任何资源的开发、使用、安装教程,所提供的下载服务仅供学习交流探讨,请广大网友学习完成后,24小时内删除相关资源。如果涉及到侵犯版权事宜,请联系删除资源下载信息,谢谢各位的理解与支持!