QComboBox AdjustToContents改变高度

时间:2013-12-18 01:43:24

标签: qt pyqt qcombobox qtgui

我正在尝试将QComboBox设置为具有扩展高度,但调整为内容长度。

组合创建如下:

self.dataentrycombo = QComboBox()
self.dataentrycombo.setIconSize(QSize(48,48))
self.dataentrycombo.setSizePolicy(QSizePolicy.Preferred, QSizePolicy.Expanding)
self.dataentrycombo.setSizeAdjustPolicy(QComboBox.AdjustToContents)
self.dataentrycombo.setModel(self.dataentrymodel)

填充模型后,调整大小,但高度小于组合框所在的工具栏:

enter image description here

如果我更改主窗口大小,那么它将完全展开:

enter image description here

我尝试使用QComboBox.AdjustToMinimumContentsLengthWithIcon,但它看起来像这样:

enter image description here

我的模型项目是这样创建的:

    item = QStandardItem(QIcon(form.icon), form.icontext)
    item.setData(form, Qt.UserRole + 1)
    self.dataentrymodel.appendRow(item)

额外信息:

  • Qt:4.7
  • Windows 7和8

1 个答案:

答案 0 :(得分:0)

我能够使用以下方法修复它:

    self.dataentrycombo.setMinimumHeight(self.projecttoolbar.height())

这是一个肮脏的黑客,但它现在可以正常工作。