QTableWidget как выбрать ячейку для редактирования из кода и / или одним щелчком мыши

Вопрос из двух частей: у меня есть QTableWidget 10x10 с QTableWidgetItem в каждой ячейке. По какой-то причине щелчка по ячейке недостаточно для ее редактирования, мне нужно дважды щелкнуть ячейку, чтобы ввести ее.

  1. Есть ли способ изменить это поведение на одиночный щелчок

  2. Есть ли способ выбрать 2-ю ячейку в 1-й строке и подготовить ее к редактированию по умолчанию при создании окна?


person storm_to    schedule 11.01.2012    source источник


Ответы (2)


Вы можете изменить поведение редактирования различными способами с помощью setEditTriggers .

Для одиночного щелчка попробуйте:

table.setEditTriggers(QAbstractItemView.CurrentChanged)

Текущая редактируемая ячейка может быть установлена ​​с помощью editItem:

table.editItem(table.item(0, 1))
person ekhumoro    schedule 11.01.2012
comment
Это сработало, спасибо! Я обнаружил, что self.table.setEditTriggers(QAbstractItemView.AllEditTriggers) работает лучше всего. - person storm_to; 12.01.2012

Вы также можете использовать setCurrentCell.

table.setCurrentCell (0,1)

QTableWidget.setCurrentCell (self, int row, int column)

person Vicky T    schedule 20.01.2012