用QComboBox做了一个下拉框,需要隐藏其中某个选项。
QComboBox项目的隐藏/取消隐藏是否可以完成?
方法:
# hide row
view = comboBox.view()
view.setRowHidden(row, True)
# disable item
model = comboBox.model()
item = model.item(row)
item.setFlags(item.flags() & ~Qt.ItemIsEnabled
# enable item
view.setRowHidden(row, false)
item.setFlags(item.flags() | Qt.ItemIsEnabled)
过滤掉其项目的唯一方法是删除现有的项目(使用方法)。然后用它的方法再次重建整个。
QComboBox.clear() QComboBox.addItem()