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

Вниз

WM_MDIGETACTIVE   Найти похожие ветки 

 
Grigoriev   (2003-03-04 13:13) [0]

Подскажите как работает WM_MDIGETACTIVE, и если можно с примером.


 
Игорь Шевченко ©   (2003-03-04 13:24) [1]

hWnd := SendMessage(MyMDIForm.ClientHandle, WM_MDIGETACTIVE, 0, 0);

Для получения Handle активного MDI-Child"a, как следует из названия.


 
Grigoriev   (2003-03-04 13:26) [2]

А как правильно перехватить это сообщение из родительского окна


 
Игорь Шевченко ©   (2003-03-04 13:28) [3]

А это надо перехватывать оконную процедуру у клиентского окна MDI.

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_MDIGETACTIVE:
begin
Result := CallWindowProc(FPrevClientProc,
ClientHandle,
Msg,
wParam,
lParam);
.....
else
Result := CallWindowProc(FPrevClientProc,
ClientHandle,
Msg,
wParam,
lParam);
end;
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.02 c
3-390
Саня
2003-04-15 10:12
2003.05.01
Скажите почему не выполняется следующее:


4-837
Jakommo
2003-03-04 18:28
2003.05.01
(w2k) Как закрыть приложение по имени ехе в NT истемах.


3-386
_MAX_
2003-04-14 11:08
2003.05.01
RecNo в Oracle?


7-805
cat_si
2003-03-13 16:17
2003.05.01
Как выдавать звук только через спикер?


14-698
NetBreaker666
2003-04-15 15:53
2003.05.01
Кидаю сорцы... не мог бы кто-нибдудь чаго-нибудь добавить