Tecla de atalho para toda a aplicação?
Como faço para colocar um tecla de atalho para toda a aplicacao idependente de qual janela eu esteja assim como um F1 para help!
Xtreme
Curtidas 0
Respostas
Siam
29/09/2005
Registre a tecla no Windows pela função RegisterHotKey
GOSTEI 0
Zumbi
29/09/2005
Poderia colocar como fazer isso?
GOSTEI 0
Siam
29/09/2005
Vc pode registrá-la no onCreate do Form que vai receber a notificação:Depois vc deve declarar uma procedure do tipo message p/ receber a notificação do Windows:Na implementação:
E pode liberar no onDestroy:
procedure TForm1.FormCreate(Sender: TObject); begin RegisterHotKey(Handle, 1, 0, VK_F1); end;
procedure Capture_Tecla(var Msg:TWMHotKey); message WM_HotKey;
procedure TForm1.Capture_Tecla(var Msg:TWMHotKey); begin if Msg.HotKey = 1 then // tecla f1 pressionada end;
E pode liberar no onDestroy:
procedure TForm1.FormDestroy(Sender: TObject); begin UnregisterHotKey(Handle, 1); end;
GOSTEI 0
Xtreme
29/09/2005
Valeu cara era bem isso que eu queria! Obrigado pela ajuda!
GOSTEI 0
Firekiller
29/09/2005
Pessoal, apenas aproveitando o tópico, como eu faria para registrar, por exemplo CTRL+ALT+BACKSPACE ??
GOSTEI 0
Siam
29/09/2005
RegisterHotKey(Handle, 1, Mod_Control+Mod_Alt, $8);
GOSTEI 0