Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
14-97864
Soft
2003-06-12 12:53
2003.06.30
Думают ли электроны?


1-97604
Vihr
2003-06-19 08:51
2003.06.30
CustomAlignPosition


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


7-97909
LikeLamer
2003-04-21 10:24
2003.06.30
Вызов свойства компонента из его контекстного меню


1-97650
@Ujin
2003-06-19 14:00
2003.06.30
Как засунуть меню в ресурсную библиотеку?




   Наверх