Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-67265

PYQT QTableWidgetItem.flags() can not effective!

    XMLWordPrintable

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_())
      

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            chehrlic Christian Ehrlicher
            supzhang john john
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes