Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Заголовок сообщения: BCB6 создание новой компоненты (http://forum.oszone.net/showthread.php?t=30122)

Guest 02-12-2003 20:14 207362

Привет народ !
Подскажите мне идиоту кто знает.
Пытаюсь написать свою компоненту (дочерний класс от TCustomControl) в которой будет редактироваться строка (что то похожее на TEdit). Весь прикол в том что по нажатию стрелов влево, вправо объект моего класса не получает WM_KEYDOWN, а получает WM_KILLFOCUS. Почему так ? точнее сказать как сделать чтоб нажатие стрелок управления курсором доходило до моего компонента?
Я пробовал обробатывать WM_KEYDOWN у формы, но к такое сообщение приходит только к пустой форме.
Очень надеюсь что кто нибудь поможет.
Заранее всем благодарен

Guest 03-12-2003 10:56 207363

Всем спасибо.
Я разобрался. Надо переопределять функцию
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-