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

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

Спасайте, мастера! Реакция на событие Ctrl + PgUp [D5, Win2k]


Bond ©   (2002-09-26 17:53:00) 

Как сделать реакцию на событие Ctrl + PgUp. в компоненте HotKey такой комбинации клавиш нет. Уж как не бился, ничего не помогает. Может кто-то сталкивался с подобной проблемой - подскажите


Bond   (2002-09-27 10:51:00) [1]

to Юрий Зотов

Огромное спасибо!


Юрий Зотов   (2002-09-27 10:41:00) [2]

Переделанный пример их хелпа.

procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnMessage := AppMessage;
end;

procedure TForm1.AppMessage(var Msg: TMsg; var Handled: Boolean);
begin
if (Msg.message = WM_KEYDOWN) and
(Msg.wParam = VK_PRIOR) and
(GetKeyState(VK_CONTROL) < 0) then
begin
... // Нажато Ctrl+PgUp
Handled := True // Если надо, блокируем стандартную обработку
end;
end;


Bond   (2002-09-27 10:29:00) [3]

to Song
Чье событие onKeyDown?


Song   (2002-09-27 10:23:00) [4]

onKeyDown:

IF (Key=VK_PRIOR) and (ssCtrl in Shift) then ..


Bond   (2002-09-27 10:18:00) [5]

to Юрий Зотов
Заранее извиняюсь за превышающую все рамки приличия наглость, но не могли бы вы дать кусок кода? Я раньше никогда не работал с Message, а в хелпе информация довольно скудная


Заранее спасибо


Юрий Зотов   (2002-09-27 09:54:00) [6]

Не слать, а обрабатывать. Вам же реакция нужна? Вот и реагируйте.

А какой Message... Ну... догадайтесь с трех раз, какое сообщение система посылает программе при нажатии PgUp?

WM_KEYDOWN, конечно. А состояние Ctrl проверяйте в обработчике - GetKeyState.


Bond   (2002-09-27 09:44:00) [7]

to Юрий Зотов
А какой Message слать?


Юрий Зотов   (2002-09-26 18:23:00) [8]

Для контрола - OnKeyDown.
Глобально - Application.OnMessage.


Наверх

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