C ++ Windows删除最大化框

调用CreateWindow时使用这些窗口样式
WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX
这将禁用最大化框,但有什么办法,我可以完全删除它?

Solutions Collecting From Web of "C ++ Windows删除最大化框"

没有简单的方法,但是如果你要自己画标题栏 – 在这种情况下,你可以做到这一点。

为了给你一个想法,本文将一个“最小化到托盘”按钮添加到表单的标题栏,解释如何添加一个按钮。 删除标准按钮大致相同 – 定制non-client area

这将从Windows 7面板中删除关闭,最小化和最大化按钮 我意识到这是非常(非常)迟到 ,但在这里张贴,因为它可能会帮助其他人有同样的问题。

 void ClearButtons(void) { int index = WS_BORDER; unsigned int a = (unsigned int)((WS_BORDER | WS_CAPTION) & (~WS_ICONIC)); LONG_PTR lPtr; HWND hWnd = GetActiveWindow(); lPtr = GetWindowLongPtr(hWnd, index); SetWindowLongPtr(hWnd, GWL_STYLE, a); }