使用QMenuBar的布局

时间:2010-10-22 20:49:29

标签: qt

是否可以从QMenuBar对象获取布局并向其添加项目。我想要做的是在右侧包含自定义小部件(时钟和登录/关闭小部件)的菜单栏。 这段代码崩溃了。

QPushButton *b1 = new QPushButton("Button",ui->menuBar);
QHBoxLayout *rlayout = new QHBoxLayout(this);
ui->menuBar->layout()->addItem(rlayout);
rlayout->addWidget(b1);
b1->show();

还有其他方法吗? 最好的祝福, Valentin Heinitz

2 个答案:

答案 0 :(得分:1)

是否可以创建自己的容器窗口小部件,将菜单栏放在左侧,其他窗口小部件放在右侧?这应该会让你获得与菜单栏的Qt3版本类似的功能和外观。

答案 1 :(得分:0)

您应该查看QWidgetAction,它允许您在菜单栏中插入自定义小部件。然后,您必须致电QMenuBar::addAction(QAction*)将QWidgetAction放入菜单栏。

我知道这不是你问题的一部分,但也许 QDockWidget可以更好地满足你的需求吗?

希望这有帮助。