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

Вниз

Перехват и дальнейшая передача сообщений.   Найти похожие ветки 

 
KA ©   (2004-02-13 14:41) [0]

У меня 40 эдитов на форме. Мне нужно, чтобы при нажатии на ЭНТЕР они думали, что ТАБ. Оконным процедурам всех эдитов я присвоил свою процедуру. В ней я проверяю WM_KEYDOWN на VK_RETURN и если да, то keybd_event(VK_TAB,1,0,0), но при этом он пищит.
 После проверки если не VK_RETURN, то нужно передать сообщение едиту, которому оно предназначалось, но я не знаю его хендл.


 
clickmaker ©   (2004-02-13 14:57) [1]

if (Key = VK_RETURN) then begin

 keybd_event(VK_TAB, 0, 0, 0);
 Key := 0;
end;


 
clickmaker ©   (2004-02-13 14:58) [2]

Это в обработчике OnKeyDown


 
KA ©   (2004-02-13 15:17) [3]

При этом орет beeper, а мне не надо.


 
4i   (2004-02-13 16:29) [4]

а не проще ли в обработчике передавать фокус следующему контролу?


 
KA ©   (2004-02-14 11:27) [5]

А откуда я знаю, следующий контрол. Или как его узнать.


 
nexxiss ©   (2004-02-14 18:08) [6]

По TabOrder


 
iva ©   (2004-02-14 18:16) [7]

{ Это обработчик события OnKeyPress для ФОРМЫ! }
procedure TExampleForm.FormKeyPress(Sender: TObject; var Key: Char);
begin
 case key of
   #13: Perform(WM_NEXTDLGCTL, 0, 0);

 ....



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

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

Наверх




Память: 0.48 MB
Время: 0.047 c
7-1077017287
Kremen
2004-02-17 14:28
2004.04.18
МАС-адрес


1-1080336872
IGray
2004-03-27 00:34
2004.04.18
Хитрые исключения в конструкторе


14-1080526193
Думкин
2004-03-29 06:09
2004.04.18
С днем рождения! 29 марта.


14-1080044560
ИМХО
2004-03-23 15:22
2004.04.18
Задачка для шахматистов: хохотал 5 минут


3-1080155965
John Doe
2004-03-24 22:19
2004.04.18
Русские буквы