怎么响应对话框 中的最大化最小化消息呢????
我使用DialgBox 函数创建的对话框,在初始化中改变对话框风格,添加最大化最小化,但是不知道怎么响应,代码如下:INT_PTR CALLBACK DialogProc(_In_ HWND hwndDlg, _In_ UINT uMsg, _In_ WPARAM wParam, _In_ LPARAM lParam)
{
switch (uMsg)
{
case WM_INITDIALOG:
{
SetWindowLong(hwndDlg, GWL_STYLE, WS_OVERLAPPED |WS_CAPTION | WS_SYSMENU |
WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX);
break;
}
case WM_COMMAND:
{
WORD wId = LOWORD(wParam);
if (wId == IDM_EXIT)
{
PostQuitMessage(0);
}
return (INT_PTR)TRUE;
}
case WM_CLOSE: PostQuitMessage(0); return (INT_PTR)TRUE;
}
return (INT_PTR)FALSE;
} 你试一下,这样行不?
BOOL CALLBACK DialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam,LPARAM lParam)
{
switch (uMsg)
{
case WM_INITDIALOG:
SetWindowLong(hwndDlg, GWL_STYLE, WS_OVERLAPPED |WS_CAPTION | WS_SYSMENU |
WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX);
break;
case WM_COMMAND:
WORD wId = LOWORD(wParam);
if (wId == IDM_EXIT)
{
PostQuitMessage(0);
}
return (INT_PTR)TRUE;
case WM_CLOSE: PostQuitMessage(0); return (INT_PTR)TRUE;
case WM_SYSCOMMAND:
switch(wParam)
{
caseSC_MAXIMIZE:
ShowWindow(SW_SHOWMINIMIZED);
case SC_MINIMIZE:
ShowWindow(SW_SHOWMAXIMIZED);
}
}
return (INT_PTR)FALSE;
}
无符号整形 发表于 2016-7-29 16:50
你试一下,这样行不?
不行啊{:10_266:} 凉飕飕 发表于 2016-7-30 11:26
不行啊
唉,那么我也没办法了。。。
别用对话框了,用窗口吧 凉飕飕 发表于 2016-7-30 11:26
不行啊
这样行不?
BOOL CALLBACK DialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam,LPARAM lParam)
{
switch (uMsg)
{
case WM_INITDIALOG:
SetWindowLong(hwndDlg, GWL_STYLE, WS_OVERLAPPED |WS_CAPTION | WS_SYSMENU |
WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX);
break;
case WM_COMMAND:
WORD wId = LOWORD(wParam);
if (wId == IDM_EXIT)
{
PostQuitMessage(0);
}
return (INT_PTR)TRUE;
case WM_CLOSE: PostQuitMessage(0); return (INT_PTR)TRUE;
}
return (INT)DefWindowProc(hwndDlg,uMsg,wParam,lParam);
}
PS:实在想不出来了。。。 没事,谢谢啊{:7_139:}
页:
[1]