當前窗口為其它的程序窗口,一旦按了鍵盤的Alt+F1(自定義)就要把我的程序置為當前窗口???(50分)

  • 主题发起人 主题发起人 myveremy
  • 开始时间 开始时间
M

myveremy

Unregistered / Unconfirmed
GUEST, unregistred user!
是不是一定要用hook去監聽,是否有按鍵盤,要怎么做?????
 
你用下面的registerhotkey的方法注册热键
用GlobalAddAtom('hotkey')得到唯一的一个热键ID

procedure WMHotKey(var Message: TWMHOTKEY); message WM_HOTKEY;
....
procedure TForm1.FormCreate(Sender: TObject);
begin
RegisterHotKey(Handle, GlobalAddAtom('hotkey'), mod_alt, vk_F1);
end;
...
procedure TForm1.WMHotKey(var Message: TWMHOTKEY);
begin
showwindow(Form1.handle,SW_NORMAL);
SetForegroundWindow(Form1.handle);
end;
...
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
UnregisterHotKey(Handle, GlobalAddAtom('hotkey'));
end;
 
接受答案了.
 
to 大唐电信:
程序最小化后,在用這個組合鍵就激活不了啊呀!!!!!!!!!
 
这样改改试试
procedure TForm1.WMHotKey(var Message: TWMHOTKEY);
begin
showwindow(Form1.handle,SW_NORMAL);
SetForegroundWindow(Form1.handle);
windows.SetParent(application.Handle,GetdesktopWindow);
end;
 
后退
顶部