首页 > 代码库 > 热键HotKeys
热键HotKeys
一:新建类HotKeys命名空间:
using System.Runtime.InteropServices;
二:注册热键API
[DllImport("user32")] public static extern bool RegisterHotKey(IntPtr hWnd, Int32 id, UInt32 fsModifilters, Keys key); [DllImport("user32")] public static extern bool UnregisterHotKey(IntPtr hWnd, Int32 id);
三:注册/注销热键
public static void RegHotKey(IntPtr ptr) { RegisterHotKey(ptr, 555, 0, Keys.F5); RegisterHotKey(ptr, 666, 0, Keys.F6); } public static void UnRegHotKey(IntPtr ptr) { UnregisterHotKey(ptr, 555); UnregisterHotKey(ptr, 666); }
四:Form窗体调用
HotKeys.RegHotKey(this.Handle); //Load或Active事件
HotKeys.UnRegHotKey(this.Handle);//Closing事件
五:Form窗体重写WndPro
protected override void WndProc(ref Message m) { const Int32 WM_HOTKEY = 0x0312; IntPtr ptr = m.WParam; String sptr = ptr.ToString(); switch (m.Msg) { case WM_HOTKEY: if (sptr.Equals("555")) { tsb_OK(); //调用事件 } else if (sptr.Equals("666")) { barbtn_Referral(); } break; } base.WndProc(ref m); }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。