最大化窗口中没有恢复按钮

时间:2015-03-03 12:07:37

标签: win32gui mdichild

当我最大化我的一个mdi客户端窗口时。然后我坚持最大化,我需要能够恢复它以查看其他窗口。

WNDCLASSEX wc;

wc.cbSize        = sizeof(WNDCLASSEX);
wc.style         = CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS;
wc.lpfnWndProc   = CWindowHandler::MsgRouter;
wc.cbClsExtra    = 0;
wc.cbWndExtra    = 0;
wc.hInstance     = hInstance;
wc.hIcon         = LoadIcon(NULL, IDI_APPLICATION);
wc.hCursor       = LoadCursor(NULL, IDC_ARROW);
wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
wc.lpszMenuName  = NULL;
wc.lpszClassName = childClassName;
wc.hIconSm       = LoadIcon(NULL, IDI_APPLICATION);

hChild = CreateMDIWindow(childClassName, "Segments", WS_OVERLAPPEDWINDOW, m_winRect.left, m_winRect.top, m_winRect.right - m_winRect.left, m_winRect.bottom - m_winRect.top, CWindowHandler::GetInstance()->GetMDIClient(), m_hInstance, (LPARAM)this);

2 个答案:

答案 0 :(得分:0)

我相信您必须添加样式MDIS_ALLCHILDSTYLES才能获得所需的窗口样式。来自MSDN ...

  

MDI子窗口的样式。 如果创建了MDI客户端窗口   使用MDIS_ALLCHILDSTYLES窗口样式,此参数可以是任何参数   窗口样式页面中列出的窗口样式的组合。   否则,此参数仅限于以下一项或多项   值。

答案 1 :(得分:0)

我通过调用return DefMDIChildProc(m_Hwnd,msg,wParam,lParam)修复了这个问题。在WM_SIZE:子窗口的wndprocs的情况下。上帝知道为什么,但它有效。

相关问题