Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];




Вниз

Непонятки с обработчиком события OnKeyDown 


Loxly   (2002-02-14 20:24) [0]

Проблема с изменением значения параметра var Key:word
Уважаемые Мастера, помогите решить следующую проблему.
У компонента Memo:TMemo имеется обработчик события OnKeyDown. При вводе текста отлеживается нажатие клавиш Ctrl+пробел. Событие возникает когда нужно. Глюков нет.
Но при нажатии Ctrl+пробел в Memo печатается пробел, который мне не нужен.
Т.к. параметр Key объявлен как var, то я закономерно предположил, что присваивание Key:=0 подавит печать пробела. Однако пробел печатается все равно :((
Операция Key:=#0 отлично проходит в OnKeyPress, но в там я не могу узнать о нажатии клавиши Ctrl.
Если бы событие OnKeyDown происходило раньше, чем OnKeyPress, то можно было бы при нажатии Ctrl устанавливать флажок, а в OnKeyPress изменять Key, но OnKeyPress проиходит раньше. Манипуляции с параметром Key события OnKeyUp тоже ни к чему не приводят.
Пожалуйста, посоветуйте что-нибудь.



Набережных С.   (2002-02-14 20:42) [1]

procedure ....Memo1KeyPress(Sender: TObject; var Key: Char);
begin
if (Key = " ")and(GetKeyState(VK_CONTROL)<0)then Key:=#0;
end;



Loxly   (2002-02-14 22:54) [2]

Спасибо! Все получилось :-)




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.023 c
1-9181            Johnmen               2002-02-14 12:20  2002.03.04  
Кто плотно общался с DBGridEh ?


1-9218            avk                   2002-02-15 11:33  2002.03.04  
ListBox переход на следующую строку...


7-9319            Alex Dobrushin        2001-10-25 19:36  2002.03.04  
Invalid Window HANDLE, но такого я не встречал...


1-9158            макар                 2002-02-13 17:00  2002.03.04  
Вопрос


7-9313            Hruks                 2001-11-30 11:52  2002.03.04  
LPT, COM и Рэлюшки...