我有一个MDI应用程序和一个窗口过程来处理formChild的消息。在这种情况下,捕获WM_SYSCOMMAND消息以显示文本。当表单最小化时,显示一条消息。
一切正常,但是
问题是当子窗体最大化然后我尝试最小化窗体时,WM_SYSCOMMAND不起作用,ShowMessage
不显示。
在这种情况下我能捕捉到什么信息?
//TCHild Form Child
function MDIChildProc(hwnd: HWND; uMsg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
var
F: TChild;
begin
F := TChild(FindControl(hwnd));
begin
case uMsg of
WM_SYSCOMMAND:
begin
case wParam and $FFF0 of
SC_MINIMIZE:
begin
{First Minimize then show text}
CallWindowProc(Pointer(F.Tag), hwnd, uMsg, wParam, lParam);
ShowMessage('form minimized');
end;
end;
end;
end;
Result := CallWindowProc(Pointer(F.Tag), hwnd, uMsg, wParam, lParam);
end;
end;