1、窗體熱鍵
首先要設定主窗體keypreview為true,可直接在屬性中進行設定,
或者在窗體載入中設定: this.keypreview = true;
然後新增窗體keydown事件,如下:
複製** **如下:
private void frmmain_keydown(object sender, keyeventargs e)
}2、全域性熱鍵設定
定義api函式 》 註冊熱鍵 》 解除安裝熱鍵
我這裡定義了apphotkey類,全部**如下:
複製** **如下:
public class apphotkey
///
/// 註冊熱鍵
///
/// 視窗控制代碼
/// 熱鍵id
/// 組合鍵
/// 熱鍵
public static void regkey(intptr hwnd, int hotkey_id, keymodifiers keymodifiers, keys key)
www.cppcns.com else}}
catch (exception)
}///
/// 登出熱鍵
///
/// 視窗控制代碼
/// 熱鍵id
public static void unregkey(intptr hwnd, int hotkey_id)
}重寫窗體的wndproc函式,在視窗建立的時候註冊熱鍵,視窗銷毀時銷毀熱鍵,**如下:
複製** **如下:
private const int wm_hotkey = 0x312; //視窗訊息-熱鍵
private const int wm_create = 0x1; //視窗訊息-建立
private const int wm_destroy = 0x2; //視窗訊息-銷毀
private const int space = 0x3572; //熱鍵id
protected override void wndproc(ref message m)
break;
case wm_create: //視窗訊息-建立
apphotkey.regkey(handle, space, apphotkey.keymodifiers.ctrl | apphotkey.keymodifiers.shift | apphotkey.keymodifiers.alt, keys.s);
break;
case wm_destroy: //視窗訊息-銷毀
apphotkey.unregkey(handle, space); //銷毀熱鍵
break;
default:
break;
}本文標題: c#全域性熱鍵設定與窗體熱鍵設定例項
本文位址:
C 全域性熱鍵設定 與 窗體熱鍵設定
1 窗體熱鍵 首先要設定主窗體keypreview為true,可直接在屬性中進行設定,或者在窗體載入中設定 this.keypreview true 然後新增窗體keydown事件,如下 private void frmmain keydown object sender,keyeventargs ...
C 註冊窗體熱鍵
熱鍵 通過鍵盤上的組合鍵對目標窗體實施使用者相關的操作,例如,如果你的機器上安裝了金山詞霸2007 當在鍵盤上按 ctrl alt z 這樣的組合時,會顯示窗體或最小化到隱藏。這樣的是通過winapi的registerhotkey 函式實現的。net framework2.0並不提供有關窗體熱鍵註冊...
C 程式熱鍵設定
採用api的方式來實現。首先定義這些熱鍵註冊的api,如下 dllimport user32 public static extern bool registerhotkey intptr hwnd,int id,uint control,keys vk 註冊熱鍵的api dllimport use...