【发布时间】:2014-06-25 19:17:03
【问题描述】:
我正在尝试删除这个栏,但我无法摆脱它(它位于工具栏下方):
该栏的名称是什么,我如何访问它? 谢谢。
【问题讨论】:
我正在尝试删除这个栏,但我无法摆脱它(它位于工具栏下方):
该栏的名称是什么,我如何访问它? 谢谢。
【问题讨论】:
你调用的toolbar实际上是菜单栏,你调用的other bar实际上是一个空的工具栏。
您有一个空的工具栏的最可能的原因是您使用 QtDesigner 创建了您的窗口。如果您选择QMainWindow 作为起点,它会自动在窗口中添加一个空菜单栏和一个空工具栏。如果您不需要工具栏,请在右侧的 Object Inspector 中找到它,右键单击并选择 Remove Toolbar 'mainToolbar'(或其他默认名称)。
【讨论】:
如果您添加了该工具栏,您可能有一个指向它的指针?如果是,您可以简单地调用:
removeToolBar(toolbar);
在您的QMainWindow 班级中。否则,您可以从主窗口中删除所有工具栏:
QList<QToolBar *> allToolBars = mainWindow->findChildren<QToolBar *>();
foreach(QToolBar *tb, allToolBars) {
// This does not delete the tool bar.
mainWindow->removeToolBar(tb);
}
【讨论】:
下面为@RobbieE 的回答添加了一点内容。
在创建QMainWindow 表单时,它会为用户创建mainToolBar。
如果你右键点击它并选择Remove Toolbar 'mainToolBar'它就会消失。
或者在构造函数顶部的代码中:
ui->setupUi(this);
delete ui->mainToolBar; // add this line
希望对您有所帮助。
【讨论】: