![]() |
Привет народ !
Подскажите мне идиоту кто знает. Пытаюсь написать свою компоненту (дочерний класс от TCustomControl) в которой будет редактироваться строка (что то похожее на TEdit). Весь прикол в том что по нажатию стрелов влево, вправо объект моего класса не получает WM_KEYDOWN, а получает WM_KILLFOCUS. Почему так ? точнее сказать как сделать чтоб нажатие стрелок управления курсором доходило до моего компонента? Я пробовал обробатывать WM_KEYDOWN у формы, но к такое сообщение приходит только к пустой форме. Очень надеюсь что кто нибудь поможет. Заранее всем благодарен |
Всем спасибо.
Я разобрался. Надо переопределять функцию virtual void __fastcall DefaultHandler(void *Message); void __fastcall TMyClass::DefaultHandler(void *Message){ if(((TMessage*)Message)->Msg==WM_KEYDOWN){ . . . ((TMessage*)Message)->Result=10; }else{ TCustomControl::DefaultHandler(Message); }; }; Тему можно закрыть |
Время: 10:51. |
Время: 10:51.
© OSzone.net 2001-