Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Горячая клавиша [D5, WinXP]


User_OKA ©   (2004-07-19 14:01:00) 

Есть приложение, которое присутствует в списке задач.
Форма появляется на экране периодически.
Через форму его закрыть нельзя.
Как можно привязать приложение к горячей клавише чтобы закрывать его.
Как это сделать?
Как то перехватывать сообщения от Windows?


User_OKA   (2004-07-19 14:52:00) [1]

Нашел я что искал.
Выставляем горячие клавиши для Delphi приложения
Как сделать так, чтобы при минимизации приложения в Tray его можно было вызвать определённой комбинацией клавиш, например Alt-Shift-F9 ?

//В обработчике события OnCreate
//основной формы создаём горячую клавишу:

If not RegisterHotkey
  (Handle, 1, MOD_ALT or MOD_SHIFT, VK_F9) Then
   ShowMessage('Unable to assign Alt-Shift-F9 as hotkey.');
   
//В событии OnClose удаляем горячую клавишу:

 UnRegisterHotkey( Handle, 1 );

//Добавляем обработчик в форму для сообщения
//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;


User_OKA   (2004-07-19 14:37:00) [2]

Может как нибудь отследить нажатие клавиш в Windows


Наверх

Титульная страница Поиск, карта сайта Написать письмо