Я пишу приложение Python (используя версию 3.8.2) для моего проекта. В приложении я использую PySide2 для создания QTableWidget объекта с именем items_tableWidget . Вот фрагмент моего кода, который создает QTableWidgetItem объекты, заполняет их моими данными, делает их недоступными для редактирования пользователем и помещает их в таблицу:
cell = QtWidgets.QTableWidgetItem()
cell.setData(Qt.DisplayRole, data)
cell.setFlags(cell.flags() & ~Qt.ItemIsEditable)
ui.items_tableWidget.setItem(row_number, column_number, cell)
Я получаю это предупреждение при выполнении кода:
C:\Users\Deronek\Documents\Qt\SkyblockBazaar\main.py:346: DeprecationWarning: an integer is required (got type PySide2.QtCore.Qt.ItemFlags). Implicit conversion to integers using __int__ is deprecated, and may be removed in a future version of Python.
cell.setFlags(cell.flags() & ~Qt.ItemIsEditable)
Я новичок ie до Python, но я думаю, что это предупреждение не имеет смысла, потому что аргумент setFlags , а также flags () возвращаемое значение и ItemIsEditable перечислимое значение имеют все определенные типы и операторы в пространстве имен Qt, поэтому я не выполняю преобразование импликов. Я прав или я что-то упускаю?
Спасибо за ваши ответы.