,可以通过以下步骤实现:
下面是一个示例代码:
from PyQt5.QtWidgets import QApplication, QTreeWidget, QTreeWidgetItem, QComboBox
app = QApplication([])
# 创建QTreeWidget
treeWidget = QTreeWidget()
treeWidget.setColumnCount(2)
# 创建QTreeWidgetItem并添加到QTreeWidget
item = QTreeWidgetItem(treeWidget)
item.setText(0, "Item 1")
# 设置第二列的标志为Qt::ItemIsEnabled,即不可编辑
item.setFlags(item.flags() & ~Qt.ItemIsEnabled)
# 创建QComboBox并添加到QTreeWidgetItem的第二列
comboBox = QComboBox()
comboBox.addItem("Option 1")
comboBox.addItem("Option 2")
treeWidget.setItemWidget(item, 1, comboBox)
# 隐藏QComboBox
comboBox.setVisible(False)
# 显示QTreeWidget
treeWidget.show()
app.exec_()
在这个例子中,我们创建了一个QTreeWidget,并添加了一个QTreeWidgetItem。然后,我们设置了第二列的标志为Qt::ItemIsEnabled,这样该列就不可编辑。接下来,我们创建了一个QComboBox,并将其添加到QTreeWidgetItem的第二列中。最后,我们将QComboBox的visible属性设置为false,以隐藏它。
这样,当我们运行这段代码时,就会在QTreeWidgetItem中隐藏QComboBox。
没有搜到相关的文章