本方法可以实现在任何时候,即无论你的窗口是不是当前获得焦点的窗口,还是处于系统图标区,只要用户按下热键,都将触发窗口中的事件,在本例中实现窗口的状态切换。   1、首先我们必须声明Windows API的外部函数:   FUNCTION Integer GlobalAddAtom(ref string lpString) LIBRARY "kernel32.dll" ALIAS FOR "GlobalAddAtomA" FUNCTION ulong RegisterHotKey(ulong hwnd,ulong id,ulong fsModifiers,ulong vk) LIBRARY "user32.dll"   2、接下来,我们必须给一些需要用到的定量赋上初始值。     Public:         constant integer MOD_ALT = 1   constant integer MOD_CONTROL = 2   constant integer MOD_SHIFT = 4   3、接下来,我们必须利用下面代码在系统中注册我们要使用的热键:   //在窗口的Open事件中   long ll_RC   string ls_str   ls_str = "My atom ID"   atomid = GlobalAddAtom(ls_str) //得到唯一的ID,保证不和其他应用程序发生冲突   ll_RC = RegisterHotKey(Handle(this), atomid, MOD_ALT + MOD_CONTROL, 65) // 65为'A' //注册的热键为Ctrl+Alt+A    if ll_RC = 0 then    messagebox("错误","错误信息")   end if    4、最后,编写当用户按下热键时的处理程序:   //在窗口的Other事件中   IF wparam = atomid THEN       This.Show()   //在这里编写处理程序   END IF                      
 
 |