Среда:
Проблема:
У меня есть QTableWidget. Я добавляю строку, а затем выбираю первую ячейку.
То, что я хочу, — это возможность сразу же ввести текст в ячейку после того, как программа выберет его, поэтому мне не нужно тянуться к мышке.
Поведение выбора состоит в том, чтобы выделить ячейку, а не поместить в нее курсор. Я должен нажать на ячейку мышью, прежде чем я смогу печатать.
Все, что я обнаружил до сих пор в отношении поведения выбора, связано с параметрами выбора строки, столбца или ячейки; ничего о том, что выбор ячейки на самом деле делает.
Вот мой код, работает, как описано; rc
Индекс последней строки уже определен:
ui->thetable->scrollToBottom();
QModelIndex index = ui->thetable->model()->index(rc, 0);
ui->thetable->selectionModel()->select(index,QItemSelectionModel::Select);
Вы можете использовать метод редактирования следующим образом:
ui->thetable->edit(index);
используя индекс, который вы уже рассчитали, или вы можете подключить свой собственный сигнал к void QAbstractItemView::edit ( const QModelIndex & index )
слот, унаследованный от предметов QTableWidget.
Других решений пока нет …