Выставляем Горячие Клавиши Для Delphi Приложения

  • Автор темы Автор темы Lomanu4
  • Дата начала Дата начала

Lomanu4

Команда форума
Администратор
Ofline
Как сделать так, чтобы при минимизации приложения в Tray его можно было вызвать определённой комбинацией клавиш, например Alt-Shift-F9 ?
//В обработчике события 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;
//В событии OnClose удаляем горячую клавишу:
Код:
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;
Пробуем
 
можно все проще сделать через цикл и перечисление клавишь в цикле с переменной
 
Назад
Сверху Снизу