在工具栏中安排pyqt组合框

use*_*637 0 python qt pyqt qt-designer

我在qt设计器中创建了一个带有几个按钮的工具栏.我在堆栈上找到了一些答案,说你不能在qt设计器中添加一个组合框.有了这个,我找到了手动添加它的例子.方法是:

self.combo=QtGui.QComboBox(self.toolBar)
self.combo=insertItems(1,["One","Two","Three"])
Run Code Online (Sandbox Code Playgroud)

但是,这会将组合框一直放在我其他按钮的左上方.如何将其添加到最后?我阅读了说QComboBox是QStandardItemModel的文档,它可以是自己的也可以是父项.我试过提供额外的参数,比如某种索引,但错误说它只需要一个参数.如何指定组合框的位置?

谢谢

在此输入图像描述

Pav*_*hov 6

您添加了QComboBox作为QToolbar的子项.它不属于任何布局,因此它不占用工具栏布局中的空间.你需要使用QToolbar::addWidgetQToolbar::insertWidget代替.

self.combo=QtGui.QComboBox()
toolBar.addWidget(self.combo)
self.combo.insertItems(1,["One","Two","Three"])
Run Code Online (Sandbox Code Playgroud)

请注意,我已在最后一行中替换=..应该输入错误.