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

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



Память: 0.46 MB
Время: 0.029 c
14-1080132427
Dmitriy O.
2004-03-24 15:47
2004.04.18
Во я крут !


1-1080729635
010101001010001010101001
2004-03-31 14:40
2004.04.18
ТЕКСТ


4-1076492231
BALU1111
2004-02-11 12:37
2004.04.18
DLL


6-1076770370
Unax
2004-02-14 17:52
2004.04.18
SOCK_RAW


3-1079876707
Karlson
2004-03-21 16:45
2004.04.18
Скрипт




   Наверх