在QT中将QMenuBar放在QMainWindow底部
有没有办法将 QMenuBar 放在屏幕底部(我的意思是,在 QMainWindow 底部)?
我正在做我的论文项目,我的导师要求我在屏幕底部放置一个 QMenuBar。这可能吗?我一直在尝试调整菜单栏的几何形状。在 Qt Designer 中,我可以移动菜单栏位置,但是当我运行项目时,菜单栏始终处于打开状态。
提前致谢。
Is there any way to put a QMenuBar at screen bottom (I mean, at QMainWindow bottom)?
I'm working on my thesis project, and my director asked me to put a QMenuBar at screen bottom. Is this possible?, I have been trying adjusting the menubar geometry. In Qt Designer I can move the bar position, but when I run my project, the menu bar is always up.
Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
不要使用 QMainWindow 提供的默认 QMenuBar。相反,创建您自己的。这个概念证明示例创建了一个新的 QMenuBar,它被添加到 QVBoxLayout,而 QVBoxLayout 又被添加到主窗口:
这至少在 Windows 中有效。
Don't use the default QMenuBar provided with the QMainWindow. Instead create your own. This proof of concept example creates a new QMenuBar which is added to a QVBoxLayout which was added to the mainwindow:
This works at least in Windows.
我已将菜单放置在 QDockWidget 中,因此我认为也可以将菜单栏放置在底部。
但您必须以编程方式执行此操作。 QMenuBar继承了QWidget,因此只需在QMainWindow的底部添加一个QWidget,然后创建一个QMenuBar并将此QWidget指定为父窗口小部件即可。
I've placed menus in the QDockWidget so I assume it is also possible to place menu bar at the bottom.
But you must do it programmaticaly. QMenuBar inherits QWidget, so just add a QWidget at the bottom of QMainWindow, then create a QMenuBar specifying this QWidget as a parent widget.