我想问一下是否有人知道如何在两行中显示2个QToolBars,一个在另一行之上?我找到了QStyleOptionToolBar类,但我不知道如何使用它......
使用鼠标拖动一个工具栏很容易放在另一个工具栏下面,所以我认为必须有一种方法可以从源代码中完成这个...
任何提示都将不胜感激!
克劳斯
答案 0 :(得分:0)
我认为当你添加2个工具栏时,如果你把它们放在同一个区域,它们会自动叠加:
QMainWindow *mainWin = get_main(); // however you get it
mainWin->addToolBar(Qt::TopToolBarArea, new QToolBar);
mainWin->addToolBar(Qt::TopToolBarArea, new QToolBar);
这应该会在顶部生成2个工具栏。
答案 1 :(得分:0)
尝试在添加两个工具栏之间调用QMainWindow :: addToolBarBreak(Qt :: ToolBarArea)。
答案 2 :(得分:0)
如果您希望工具栏分为两行,则应按以下方式执行:
firstToolbar = new QToolBar(this);
secondToolbar = new QToolBar(this);
addToolBar(Qt::TopToolBarArea, firstToolbar);
addToolBarBreak();
addToolBar(Qt::TopToolBarArea, secondToolbar);
addToolBarBreak接受Qt :: ToolBarArea,因此您可以指定要添加中断的区域。默认情况下,它是Qt :: TopToolBarArea。