Форум: "Основная";
Текущий архив: 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]Спасибо! Все получилось :-)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.004 c