Форум: "Основная";
Текущий архив: 2002.10.07;
Скачать: [xml.tar.bz2];
ВнизСпасайте, мастера! Реакция на событие Ctrl + PgUp Найти похожие ветки
← →
Bond (2002-09-26 17:53) [0]Как сделать реакцию на событие Ctrl + PgUp. в компоненте HotKey такой комбинации клавиш нет. Уж как не бился, ничего не помогает. Может кто-то сталкивался с подобной проблемой - подскажите
← →
Юрий Зотов (2002-09-26 18:23) [1]Для контрола - OnKeyDown.
Глобально - Application.OnMessage.
← →
Bond (2002-09-27 09:44) [2]to Юрий Зотов
А какой Message слать?
← →
Юрий Зотов (2002-09-27 09:54) [3]Не слать, а обрабатывать. Вам же реакция нужна? Вот и реагируйте.
А какой Message... Ну... догадайтесь с трех раз, какое сообщение система посылает программе при нажатии PgUp?
WM_KEYDOWN, конечно. А состояние Ctrl проверяйте в обработчике - GetKeyState.
← →
Bond (2002-09-27 10:18) [4]to Юрий Зотов
Заранее извиняюсь за превышающую все рамки приличия наглость, но не могли бы вы дать кусок кода? Я раньше никогда не работал с Message, а в хелпе информация довольно скудная
Заранее спасибо
← →
Song (2002-09-27 10:23) [5]onKeyDown:
IF (Key=VK_PRIOR) and (ssCtrl in Shift) then ..
← →
Bond (2002-09-27 10:29) [6]to Song
Чье событие onKeyDown?
← →
Юрий Зотов (2002-09-27 10:41) [7]Переделанный пример их хелпа.
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:51) [8]to Юрий Зотов
Огромное спасибо!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.10.07;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c