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

Перехват сообщений о создании окошек   Найти похожие ветки 

← →
dy ©   (2004-09-10 16:25) [0]

HI, all.
Трабля такая - надо в родительском окне (в конкретном случае MDI parent) отлавливать событие создания (показа) дочернего окна и закрытия его.
Долго бьюсь над проблемой, но че-та не складывается...

Зарание спасиба.


← →
Игорь Шевченко ©   (2004-09-10 16:31) [1]

Замена оконной процедуры у ClientHandle, куда и приходят сообщения о создании/уничтожении дочерних окон.
Пример:

procedure TfMain.FormCreate(Sender: TObject);
begin
 FClientInstance := MakeObjectInstance(ClientWndProc);
 FPrevClientProc := Pointer(GetWindowLong(ClientHandle,
                             GWL_WNDPROC));
 SetWindowLong(ClientHandle,
               GWL_WNDPROC, LongInt(FClientInstance));
end;

procedure TfMain.ClientWndProc(var Message: TMessage);
begin
 with Message do
   case Msg of
   WM_MDICREATE:
     begin
       Result := CallWindowProc(FPrevClientProc,
                              ClientHandle,
                              Msg,
                              wParam,
                              lParam);
       AddButtonToPanel (Result);
     end;
   WM_MDIDESTROY:
     begin
       RemoveButtonFromPanel(wParam);
       Result := CallWindowProc(FPrevClientProc,
                              ClientHandle,
                              Msg,
                              wParam,
                              lParam);
     end;
   else
     Result := CallWindowProc(FPrevClientProc,
                              ClientHandle,
                              Msg,
                              wParam,
                              lParam);
   end;
end;



← →
dy ©   (2004-09-10 17:42) [2]

Ок, пасиба.
Кстати, почему та же тема не работает с процедурами обработки сообщений?



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

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



Память: 0.45 MB
Время: 0.043 c
14-1095508040
Программер_
2004-09-18 15:47
2004.10.10
Вот привожу код и пусть кто мне сможет сказать что нем


9-1086853058
Серый
2004-06-10 11:37
2004.10.10
Загрузка ботов


1-1095766297
denis24
2004-09-21 15:31
2004.10.10
хранение строк


1-1096025332
SergeyM
2004-09-24 15:28
2004.10.10
Текст в формате HTML


1-1095875344
hgd
2004-09-22 21:49
2004.10.10
Ктог знает, как можно картинку формата png




   Наверх