Я использую QTableWidget как функцию ввода-вывода для пользователя, но хочу сделать его более удобным и интуитивно понятным, отключив возможность редактирования ячеек, предназначенных только для вывода данных.
Я могу снять галочку "Редактируемый "под флагами для каждой отдельной ячейки в Qt Designer, но как только я изменю значение ячейки с помощью self.table_item.setItem(row, column, QTableWidgetItem(str(value)))
, ячейки снова будут редактируемыми.
Этот вопрос / ответ предлагают использоватьself.table_item.setEditTriggers(QtWidgets.QTableWidget.NoEditTriggers)
, но это меняет флаг для всего элемента QTableWidget, а не только для одной ячейки.
Я также пробовал self.table_time.item(row,column).setEditTriggers(QtWidgets.QTableWidget.NoEditTriggers)
, но получаю трассировку 'QTableWidgetItem' object has no attribute 'setEditTriggers'
.
.setFlags()
похоже на функцию, которую мне нужно использовать, но я не знаю, как использовать это, чтобы сделать что-то недоступным для редактирования или как применить это к отдельной ячейке.
Вопрос: Как изменить флаг "редактируемый" для отдельной ячейки QTableWidget в PyQt5 после изменения значения ячеек QTableWidgetItem через .setItem()
.
Вы получите дополнительное воображениеy Интернет-точки, если вы предоставляете дополнительное решение, которое сделает элегантным редактирование всей строки.