- Регистрация
- 1 Мар 2015
- Сообщения
- 1,481
- Баллы
- 155
Как сделать так, чтобы при минимизации приложения в Tray его можно было вызвать определённой комбинацией клавиш, например Alt-Shift-F9 ?
//В обработчике события OnCreate
//основной формы создаём горячую клавишу:
//В событии OnClose удаляем горячую клавишу:
//Добавляем обработчик в форму для сообщения
//WM_HOTKEY:
// в секции объявлений формы
Пробуем
//В обработчике события OnCreate
//основной формы создаём горячую клавишу:
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
if not RegisterHotkey(Handle, 1, MOD_ALT or MOD_SHIFT, VK_F9) then
ShowMessage('Unable to assign Alt-Shift-F9 as hotkey.');
end;
Код:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
UnRegisterHotkey( Handle, 1 );
end;
//WM_HOTKEY:
// в секции объявлений формы
Код:
private
procedure WMHotkey( var msg: TWMHotkey ); message WM_HOTKEY;
Код:
procedure TForm1.WMHotkey( var msg: TWMHotkey );
begin
if msg.hotkey = 1 then
begin
if IsIconic( Application.Handle ) then
Application.Restore;
BringToFront;
end;
end;