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

Вниз

MDI Interface, MDICLIENT   Найти похожие ветки 

 
Fouler   (2003-02-11 19:02) [0]

Мастера, пожалуйста, помогите разобраться с этим вопросом.
Пытаюсь создать многодокументное приложение. В чем проблема?
Никак не могу вникнуть, как пользоваться MDICLIENT классом.

Вопрос первый таков:
Сообщения группы WM_MDI... Если посылается такое сообщение клиенту, должен ли я его обработать, например:

function WindowProc_Child(hWnd: HWND; M: Integer; W: wParam; L: lParam): lResult; stdcall;
begin
case M of
WM_CLOSE : begin
PostMessage(HWND_CLIENT, WM_MDIDESTROY, hWnd, 0);
Result := 0;
end;
else
Result := DefMDIChildProc(hWnd,M,W,L);
end;
end;

function WindowProc_Client(hWnd: HWND; M: Integer; W: wParam; L: lParam): lResult; stdcall;
begin
case M of
WM_MDIDESTROY : begin
Result := DefWindowProc(hWnd,M,W,L);
DestroyWindow(W);
end;
else
begin
Result := DefWindowProc(hWnd,M,W,L);
if Result = HTCLIENT then Result := HTTRANSPARENT;
end;
end;
end;

Судя по тому, что не происходит ничего при ничегонеделании при получении WM_MDIDESTROY и иже с ним, обрабатывать надо, но в исходниках на Си я не нахожу ничего подобного. В чем я неправ, не пойму.

Вопрос второй.
При убиениии дочернего окна вышеприведенным способом, после того как это произошло, в меню главного окна остается висеть системное меню Child"а? Как же правильно закрывать дочерние окна?

Если кто-нибудь может помочь хотя-бы скелетом такого приложения, выложу свой адрес.
Заранее благодарен за помощь.


 
Fouler   (2003-02-11 21:34) [1]

Вопрос снят, спасибо за помощь



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

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

Наверх




Память: 0.47 MB
Время: 0.011 c
1-30344
me2
2003-03-31 17:20
2003.04.10
Удаление каталогов


3-30287
Сергей
2003-03-22 13:23
2003.04.10
Как выдернуть с помощью SELECT (TQuery) поле с именем


14-30582
mikeevteev
2003-03-25 01:08
2003.04.10
Где найти avi для длительной файловой операции.


1-30362
Борис_Ш
2003-03-31 14:08
2003.04.10
После вызова формы, в которой Drag&Drop, не хватает памяти


1-30418
dmk
2003-03-27 00:41
2003.04.10
Перехват перерисовки окна?