私のPyQTウィンドウでは、QComboBox
という表が1つの列にあります。 QComboBox
は後で通常のQTableWidgetItem
に変更してテキストを表示できますか?PyQTテーブル項目をQComboBoxからQTableWidgetItemに変更する
私は以下を試しましたが、QComboBox
はQTableWidgetItem
のテキストに置き換えられませんでした。
myTable= QTableWidget()
myTable.setRowCount(6)
myTable.setColumnCount(2)
myTable.setHorizontalHeaderLabels(QString("Name;Age;").split(";"))
myTable.horizontalHeader().setResizeMode(QHeaderView.Stretch)
# Populate with QComboBox in column 1
for i, name in enumerate(nameList):
myTable.setItem(i, 0, QTableWidgetItem(name))
ageCombo = QComboBox()
for option in ageComboOptions:
ageCombo.addItem(option)
myTable.setCellWidget(i, 1, ageCombo)
# Change column 1 to QTableWidgetItem
for i, name in enumerate(nameList):
myTable.setItem(i, 1, QTableWidgetItem(name))
つもりでしたか?ユーザーが項目を選択すると、コンボボックスのシャウドが消え、セルが新しいテキストで更新されます。 – ekhumoro