Details
-
Bug
-
Resolution: Invalid
-
P2: Important
-
None
-
5.9.0, 5.9.2, 5.9.3, 5.10.1
-
None
-
Windows 7 Ultimate X64
python 3.6
pyqt5 5.10
Description
edition:PyQt5 5.10
i use:
QTableWidgetItem.flags(Qt.ItemIsEditable) or other flags,
but the item is not editable,it is disabled,can not selection and edit!
from PyQt5.QtWidgets import QApplication,QTableWidgetItem,QTableWidget,QWidget,QHBoxLayout,QHeaderView from PyQt5.QtCore import Qt import sys class test_bug(QWidget): def __init__(self): super().__init__() self.setup_ui() def setup_ui(self): self.resize(500,350) table = QTableWidget() table.setColumnCount(3) table.setRowCount(4) table.setColumnWidth(0,150) table.setColumnWidth(1,150) for x in range(4): table.setRowHeight(x,50) table.horizontalHeader().setSectionResizeMode(2,QHeaderView.Stretch) qbox = QHBoxLayout() qbox.addWidget(table) item1 = QTableWidgetItem('NoItemFlags') item1.setFlags(Qt.NoItemFlags) item2 = QTableWidgetItem('ItemIsSelectable') item2.setFlags(Qt.ItemIsSelectable) item3 = QTableWidgetItem('ItemIsEditable') item3.setFlags(Qt.ItemIsEditable) item4 = QTableWidgetItem('ItemIsDragEnabled') item4.setFlags(Qt.ItemIsDragEnabled) item5 = QTableWidgetItem('ItemIsDropEnabled') item5.setFlags(Qt.ItemIsDropEnabled) item6 = QTableWidgetItem('ItemIsUserCheckable') item6.setFlags(Qt.ItemIsUserCheckable) item7 = QTableWidgetItem('ItemIsEnabled') item7.setFlags(Qt.ItemIsEditable) item8 = QTableWidgetItem('ItemIsAutoTristate') item8.setFlags(Qt.ItemIsAutoTristate) item9 = QTableWidgetItem('ItemIsTristate') item9.setFlags(Qt.ItemIsTristate) item10 = QTableWidgetItem('ItemNeverHasChildren') item10.setFlags(Qt.ItemNeverHasChildren) item11 = QTableWidgetItem('ItemIsUserTristate') item11.setFlags(Qt.ItemIsUserTristate) item12 = QTableWidgetItem('not set') table.setItem(0,0,item1) table.setItem(0,1,item2) table.setItem(0,2,item3) table.setItem(1,0,item4) table.setItem(1,1,item5) table.setItem(1,2,item6) table.setItem(2,0,item7) table.setItem(2,1,item8) table.setItem(2,2,item9) table.setItem(3,0,item10) table.setItem(3,1,item11) table.setItem(3,2,item12) self.setLayout(qbox) self.show() if __name__ == '__main__': app = QApplication(sys.argv) ui = test_bug() sys.exit(app.exec_())