01
2012
04

C#窗体及控件的快捷键

菜单上那个快捷键,选则一个菜单项,在右边的属性栏的ShortcutKeys里加快捷键就可以了
ShortcutKeyDisplay里的内容可以覆盖掉快捷键的内容.
================================================================================

把窗体的KeyPreview改成true
添加窗体的KeyDown事件。
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control && e.KeyCode == Keys.A)
{
button1.PerformClick();
}
}
另外e.modifers,e.KeyData,e.KeyValue,e.KeyChar也可以检查组合按键
if(e.KeyValue==112 )//F1键的keyvalue是112
if (e.KeyChar == (char)Keys.F2)
================================================================================


[DllImport("user32.dll")]
private static extern bool RegisterHotKey(IntPtr hWnd, int id, uint fsModifiers, Keys vk);
[DllImport("user32.dll")]
private static extern bool UnregisterHotKey(IntPtr hWnd, int id);
这是设置和取消热键的API
RegisterHotKey(this.Handle, 200, 0, Keys.F2); 第一个是本窗口的句柄,第二个随便写一个数,如果多个热键的话要写不同,作为热键的标记,
取消热键的时候带入这个数字就可以了
UnregisterHotKey(this.Handle, 200);
« 上一篇下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。