Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.30;
Скачать: CL | DM;

Вниз

Как очистить буфер клавиатуры?   Найти похожие ветки 

 
vv_fran   (2003-06-17 15:03) [0]

Как очистить буфер клавиатуры? Есть приложение с горячей клавишей <Enter>, по удержанию ее событие генерится много раз. Как избежать?


 
Song ©   (2003-06-17 15:20) [1]

Своё приложение или чужое?


 
vv_fran   (2003-06-17 15:22) [2]

Мое, конечно


 
Song ©   (2003-06-17 15:24) [3]

Вообще PeekMessage(), но это грубо. Я думаю, что твою задачу можно решить в том, месте "где Enter удерживается".


 
vv_fran   (2003-06-17 15:34) [4]

А что значит "где Enter удерживается"? Программа делает конвертацию из одного формата БД в другой и когда не может автоматически перевести - появляется окно ручной коррекции не найденных данных( с частичным поиском) и по <Enter> принимается коррекция к запоминанию и окно закрывается и до следующей невозможности автоматической конвертации. Т.е перед открытием(после открытия) окна надо очищать буфер клавиатуры.


 
Song ©   (2003-06-17 15:38) [5]

А Enter потверждает данные?
Я бы кинул на это окно TBitBtn, дал бы ему ModalResult:=mrOk, по нажатию кнопки форма закрывается, программа что нужно делает, обработка идёт дальше. Буфер нигде очищать не надо.


 
vv_fran   (2003-06-17 16:48) [6]

Не работает. Даже если я держу Enter и отпускаю его до создания окна коррекции, то окно пявляется и тут же исчезает.


 
vv_fran   (2003-06-17 17:07) [7]

Проблема решилась очень просто - перед показом окна надо написать:
Application.ProcessMessages();



Страницы: 1 вся ветка

Текущий архив: 2003.06.30;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.043 c
14-97843
Silver_
2003-06-12 10:57
2003.06.30
Невосприинчивость к определенным внешним сообщениям


7-97911
Ihor
2003-04-09 11:41
2003.06.30
Закрытие проги.


6-97773
_DarkSide
2003-04-24 16:34
2003.06.30
Локальные компьютеры


1-97606
denis24
2003-06-19 11:46
2003.06.30
memo1.lines


3-97542
Valet
2003-06-06 16:07
2003.06.30
При попытке Refresh таблицы получаю ошибку.