RegisterHotKey(Handle, hotkeyid, 0, VK_F8); 注:handle是一个特殊的变量,它表示当前窗口的句柄。 这个函数你应该能句举一反三了吧。 原理: 一旦热键设置成功,在程序应用过程中如果有相应的键被按下,Windows系统都会给你的应 用程序发送一个消息WM_HOTKEY,不管你的应用程序是否为当前活动的。其中WM_HOTKEY...
用程序发送一个消息WM_HOTKEY,不管你的应用程序是否为当前活动的。其中WM_HOTKEY消 息的格式为: idHotKey = (int) wParam; // 该参数在设置系统级的热键有用,一般不予使用 fuModifiers = (UINT) LOWORD(lParam); //热键的辅助按键 uVirtKey = (UINT) HIWORD(lParam); //热键的键值 第三步: 注册了热...
WMHotKey (var Msg : Tmessage); begin {Ctrl+F1键被按下} if (msg.LParamHi=112 ) and (msg.lparamlo=MOD_CONTROL ) then begin msg.Result:=1;//该消息已经被处理 application.BringToFront ; label1.Caption := 'Ctrl+F1'; end; {Ctrl+F2键被按下} if (msg.LParamHi=113 ) and (msg....
procedure TForm1.WMHotKey(var Msg: TWMHotKey);begin if msg.HotKey = F9_id then form1.hide;if msg.HotKey = F10_id then form1.show;end;end.
1、定义捕获Windows消息WM_HOTKEY的钩子函数,即:procedureWMHotKey(varMsg:TWMHotKey);messageWM_HOTKEY; 2、向Windows加入一个全局原子Myhotkey:GlobalAddAtom(’MyHotkey’),并保留其句柄。 3、向Windows登记热键:调用API函数RegisterHotKey实现。 三、源程序: unitUnit1; interface uses ...
private aatom:atom; c:atom; procedure hotkey(var msg:tmessage);message wm_hotkey; //定义全局热键消息事件 { Private declarations } public { Public declarations } end;var Form1: TForm1;a,b:integer;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);beginaatom:...
GlobalDeleteAtom('MyHotKey'); // 1. 2. 3. 4. 5. 6. procedure HotKeyDown(var Msg: Tmessage); message WM_HOTKEY; //声明 procedure TForm1.HotKeyDown(var Msg: Tmessage); begin if (Msg.LparamLo = MOD_ALT) AND (Msg.LParamHi = VK_F9 then) // 假设热键为 ALT+F9 ...
GlobalDeleteAtom(HotKeyId); end; procedure TForm1.WMHotKey(var Msg: TWMHotKey); begin if Msg.HotKey = HotKeyId then begin ShowMessage('热键被触发'); end; end; ``` 上述代码中,首先使用GlobalAddAtom函数创建一个唯一的原子(Atom),用于标识热键。然后使用RegisterHotKey函数注册热键,指定了热键的组...
//procedure Hotkey2(var msg:TWMHotkey);message WM_Hotkey;//同上 3.消息过程的处理(下面二个IF任选一个即可,如果msg在步骤2定义成TWMHotkey,则不用转换) procedure TForm2.Hotkey(var msg: TMessage); begin if TWMHotkey(msg).Hotkey=aatom then ...
WM_SETHOTKEY = $0032; 应用程序发送此消息让一个窗口与一个热键相关连 WM_GETHOTKEY = $0033; 应用程序发送此消息来判断热键与某个窗口是否有关联 WM_QUERYDRAGICON = $0037; 此消息发送给最小化窗口,当此窗口将要被拖放而它的类中没有定义图标,应用程序能 返回一个图标或光标的句柄,当用户拖放图标时系统显...