如何将 QMenu 项目移动到 QMenuBar 的右上角
Posted
技术标签:
【中文标题】如何将 QMenu 项目移动到 QMenuBar 的右上角【英文标题】:How can I move a QMenu item to the right corner of a QMenuBar 【发布时间】:2015-02-09 15:20:58 【问题描述】:我的菜单项是通过 UI 设计器添加的。我似乎找不到合适的解决方案。我在 IRC 上问过这个解决方案 How do I set QMenu to align to the right of a toolbar? 我并不清楚。
有没有一种简单的方法可以通过访问 MainWindow 构造函数中的 UI 代码来做到这一点?还是有其他指针?
【问题讨论】:
How do I set QMenu to align to the right of a toolbar?的可能重复 【参考方案1】:要将菜单添加到菜单栏的右侧,您可以使用 setCornerWidget
添加一个包含所需菜单的新 QMenuBar
作为右上角的小部件:
QMenuBar *bar = new QMenuBar(ui->menuBar);
QMenu *menuHelp = new QMenu("Help", bar);
bar->addMenu(menuHelp);
ui->menuBar->setCornerWidget(bar);
【讨论】:
【参考方案2】:如果您使用 QtDesigner,则有一个“属性编辑器”,其中列出了您当前所选项目的所有属性。
如果选择菜单栏,则有一个“layoutDirection”属性,选择“LeftToRight”或“RightToLeft”
如果是手动设置的话。就这样使用:
QApplication app(argc, argv);
app.setLayoutDirection(Qt::RightToLeft);
【讨论】:
这将我所有的菜单项放在右侧。我只需要将“关于”菜单项放在右侧....以上是关于如何将 QMenu 项目移动到 QMenuBar 的右上角的主要内容,如果未能解决你的问题,请参考以下文章