首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

问个常用的东西:怎么为按钮添加快捷键

2013-01-04 
问个常用的东西:如何为按钮添加快捷键如何为按钮添加快捷键?我在按钮的Key_Down事件里添加代码,但按钮根本

问个常用的东西:如何为按钮添加快捷键
如何为按钮添加快捷键?
我在按钮的Key_Down事件里添加代码,但按钮根本没响应这个事件。
这个按钮用的是QLFUL的第三方库。
[解决办法]
不要在按钮的Key_Down事件里处理快捷键,因为你只有点了按钮,这个按钮才会响应Key_Down事件,Key_Down事件只会发给拥有输入焦点的控件,通常,除非按钮是tab 0,否则它不会在打开时拥有输入焦点,或者你点过这个按钮,它才会有输入焦点,

在form上,Key_Down事件只会发送给一个控件,而不是发给form上所有的控件,Key_Down事件只发送给拥有输入焦点的控件,而且在整个windows中,在一个时刻只有一个控件拥有输入焦点,

如果你的按钮碰巧拥有输入焦点,那么它是可以相应Key_Down事件,但你的按钮通常不会有输入焦点,除非它是tab 0控件,
[解决办法]
一般来说,可以为按钮添加加速键。

方法是设置按钮文本,比如 &Accept,那么显示出来的按钮就是 Accept。用户可以按 Alt + A 操作按钮。
[解决办法]
在button的Text文本属性后面加上&+字母,这样你就可以用Alt+指定字母这个快捷键来响应,
如果 提交按钮 Text=提交(&S)
[解决办法]
代码添加在窗体的keydown事件里,窗体属性KeyPreview设为true
[解决办法]
窗体 KeyPreview 属性设置为 True,在窗体的 KeyPress 事件里调用按钮点击事件方法
[解决办法]
我猜,你是要写一个hook 键盘全局勾子吧?
 请参考:http://www.cnblogs.com/MaxWoods/archive/2008/05/22/1205221.html

热点排行