5

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

4

2 回答 2

3

没有简单的方法,但是如果您要自己绘制标题栏 - 在这种情况下您可以做到。

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

于 2011-09-27T21:13:09.413 回答
1

这将从 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);  
}
于 2013-11-21T18:29:19.807 回答