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

时间:2019-03-05 10:15:49

标签: wpf windows window

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

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

可以实现的第一个目标

第三点和第四点不能同时进行。因此,我选择隐藏“最小化”和“最大化”按钮,并使用“关闭”按钮和任务栏图标解决方案。 (单击关闭按钮不会关闭应用程序,而是将其最小化到任务栏图标。)

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

1 个答案:

答案 0 :(得分:0)

我不希望您这样做,因为它可能会使某些Windows自定义程序无法让用户将窗口固定在顶部。请不要禁用标题栏上下文。