如何创建没有系统菜单、最小化和最大化框的 Motif 主窗口?我只是无法通过谷歌搜索和阅读文档和教程来找到方法。我相信使用 XtVaCreateManagedWindow
的一些附加参数应该是可能的,但是哪个?
我尝试了 XtVaSetValues
的几种变体(topWid
、XmNmwmDecorations
,...),但没有任何效果。相反,我收到一条错误消息,提示我需要使用供应商 shell 来执行此操作。然而,大多数小部件类型并不是从供应商 shell 派生的,当我例如尝试使用对话框外壳并在其中放置一个可滚动的文本小部件,然后文本小部件似乎可以控制对话框。
最佳答案
显然不可能(轻易)摆脱窗口(系统)菜单,但似乎可以使用如下代码禁用窗口菜单项:
int i;
XtVaGetValues (widget, XmNmwmFunctions, &i);
i &= ~(MWM_FUNC_ALL | MWM_FUNC_MINIMIZE | MWM_FUNC_MAXIMIZE | MWM_FUNC_CLOSE);
XtVaSetValues (widget, XmNmwmFunctions, i);
它也删除了相关的窗口装饰,显然甚至适用于非供应商外壳小部件。
关于c++ - Motif主窗口没有系统菜单,如何最小化和最大化框? (C++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1389167/