删除窗口的标题上下文菜单,但保留其他所有内容



我发现删除窗口标题上下文菜单的唯一方法是:

SetWindowLong(hwnd, GWL_STYLE, GetWindowLong(hwnd, GWL_STYLE) & ~WS_SYSMENU);

其中ws_sysmenu是0x80000。

但这也隐藏了我不想要的窗口的关闭按钮。

有一个我尚未尝试的解决方法。我可能可以右键单击窗口,还可以覆盖Alt Space(或Alt UP)键组合。我正在使用WPF。

更具体地说,我想要一个窗口,看起来像这样:

  1. 标题栏中没有图标
  2. 没有上下文菜单
  3. 没有最大化按钮(不仅是禁用)
  4. 具有最小的按钮

我可以通过此https://stackoverflow.com/a/4553510/5539917

实现第一个

第三和第三点不能同时完成。因此,我选择隐藏最小化和最大化按钮,并使用"关闭"按钮和托盘图标解决方案。(单击"关闭"按钮不会关闭应用程序,而是将其最小化为托盘图标。)

唯一的剩下是第二点。有一个简单的解决方案吗?我不想创建一个完全自定义的窗口,也不特别喜欢我提到的解决方法。

我不想这样做,因为它可以禁用某些Windows自定义程序,从让用户将窗口固定在顶部。请不要禁用标题栏上下文。

答案是:这是不可能的。

相关内容

最新更新