Вниз
Скачать: CL | DM;

отлов нажатия ТАБ - всё работает, но слышен beep.   Найти похожие ветки 

 
Prohodil Mimo ©   (2005-05-30 16:21) [0]

Необходимо, что бы компонент (потомок TMaskEdit) отлавливал нажатия на VK_TAB.
Попробовал такой вариант :

Procedure TADQEdit.WMGetDlgCode(Var Message: TWMGetDlgCode);
Begin
Inherited;
  Message.Result := Message.Result or DLGC_WANTTAB;
End;


всё работает, но при нажатии на таб слышен beep.

Пробовал и такой вариант :

Procedure TADQEdit.CMWantSpecialKey(Var Msg:TCMWantSpecialKey);
Begin
Inherited;
If Msg.CharCode = VK_TAB then
  Msg.Result:=1;
End;

то же самое, хотя на компоненте, потомке TCustomControl - beep не возникает.

Что может быть?


 
Чапаев ©   (2005-05-30 21:42) [1]

Событие OnKeyDown есть? Обнуляй тамошний параметр Key.


 
Prohodil Mimo ©   (2005-05-31 11:11) [2]

Чапаев ©   (30.05.05 21:42) [1]
Событие OnKeyDown есть? Обнуляй тамошний параметр Key


Вот как делаю :

Procedure TADComboBox.KeyDown(var Key: Word; Shift: TShiftState);
Begin
If ADSGrid <> Nil then
Begin
  If Key=VK_TAB then
  Begin
     ADSGrid.SetFocus;
     ADSGrid.KeyDown(Key,Shift);
     Key:=0;
  End;
End;
If Key>0 then
  inherited KeyDown(Key,Shift);
End;


Сегодня перекомпилил проект, потомок TMaskEdit и TCheckBox пикать перестали, потомок TComboBox пищит до сих пор. Процедуры и события везде одинаковые.

Что ещё можно проверить?



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

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



Память: 0.45 MB
Время: 0.022 c
1-1132824219
Tigra
2005-11-24 12:23
2005.12.18
Delphi + MS Word


3-1130410688
Александр_н
2005-10-27 14:58
2005.12.18
Создание базы даннх программным путём


2-1133285271
STRINGGRID
2005-11-29 20:27
2005.12.18
TABLICA STRINGGRID


14-1132914608
*Pavel
2005-11-25 13:30
2005.12.18
Штрихкоды и русские буквы


2-1133369413
zxc
2005-11-30 19:50
2005.12.18
как из тхт заданное число символов прочитать




   Наверх