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

Вниз

Определние, что поступило сообщение   Найти похожие ветки 

 
Endi ©   (2003-07-18 15:35) [0]

Уважаемые мастера!!!
Каким образом форма может определить, что дочернее окно получило сообщение?


 
Юрий Федоров ©   (2003-07-18 15:40) [1]

подменить дочернему окну WindowProc.
Предварительно запомнить старый, вызвать его из нового


 
-= Demon =-   (2003-07-18 15:41) [2]

Получив от него соответствующее сообщение :) ...


 
Endi ©   (2003-07-18 15:45) [3]

На компоненте Panel1 лежит Edit1, как определить, что Panel1 получила сообщение WM_KEYDOWN?


 
-= Demon =-   (2003-07-18 15:52) [4]

Обрабатывать ON_KEYDOWN в Edit1...


 
Endi ©   (2003-07-18 15:52) [5]

А как это прописать?


 
-= Demon =-   (2003-07-18 15:54) [6]

Выбираешь Edit1, на закладке Object Inspector закладка Events, идешь на OnKeyDown - все!...


 
Endi ©   (2003-07-18 16:23) [7]

Каким образом можно применить WindowProc, я попробывал у меня она при создании формы посылает сообщение, а дальше молчание?


 
Юрий Федоров ©   (2003-07-18 16:40) [8]

Уточни, что именно нужно, поподробнее


 
Endi ©   (2003-07-18 16:53) [9]

Выглядит так:

procedure TForm1.WMCtlColorEdit(var Message : TMessage);
begin
if message.Msg = wm_CtlColorEdit then
SetBkMode(edit1.Handle, TRANSPARENT);
inherited;
end;

procedure Tform1.FormCreate(Sender: TObject);
begin
windowproc:=WMCtlColorEdit;
end;

причем так даже форма не прорисовывается.


 
Юрий Федоров ©   (2003-07-18 17:06) [10]

TForm1 = class(TForm)
...
private
FOldEdit1WndProc : TWndMethod;
procedure NewEdit1WndMethod(var Message : TMessage);
....
procedure Tform1.FormCreate(Sender: TObject);
begin
FOldEditWndProc:=Edit1.WndMethod;
Edit1.WndMethod:=NewEdit1WndMethod;
end;
...
procedure TForm1.NewEdit1WndMethod(var Message : TMessage);
begin
if message.Msg = wm_CtlColorEdit
then SetBkMode(edit1.Handle, TRANSPARENT)
else FOldEditWndProc(Message);
end;

примерно так



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

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

Наверх




Память: 0.48 MB
Время: 0.013 c
1-100828
Федор
2003-07-17 13:05
2003.07.31
в DevXpressQuantumGrid из кода выделить строку цветом


1-100696
Endi
2003-07-16 08:11
2003.07.31
Пересылка сообщений


3-100623
dumm
2003-07-08 12:48
2003.07.31
remote server ib6


3-100626
viktor
2003-07-07 13:35
2003.07.31
cat := CreateOleObject( ADOX.Catalog )


14-100918
Navi
2003-07-14 19:25
2003.07.31
Экранныя лупа