Моя задача проста. В таблице перейдите к следующей строке после того, как пользователь записал число и нажал клавишу ввода.
У меня есть QTableWidget с событием клавиши , которое получает позицию курсора из сигнала :
connect(ui->table->selectionModel(), SIGNAL(currentChanged(QModelIndex,QModelIndex)), key, SLOT(cell_position(QModelIndex)));
Ключевое событие:
...
if ( (key->key()==Qt::Key_Enter) ) {
...
QTableWidgetItem:
...
QTableWidgetItem *item = table->item(m_pos, n_pos);
if(item == nullptr)
{
QTableWidgetItem *item = new QTableWidgetItem;
table->setItem(m_pos, n_pos, item);
item->setSelected(1);
...
Но это дает мне такое поведение - он выбирает ячейку под в настоящее время введена ячейка. Курсор остается на своем месте.

Пожалуйста, у вас есть какие-либо идеи, как переместить курсор вниз? Я попробовал некоторые методы QTableWidgetItem, но не нашел ни одного подходящего.
Спасибо.
Обновление: вместо
item->setSelected(1);
Я использую
table->setCurrentItem(item);
который делает то, что мне нужно. Он перемещает курсор в ячейку элемента.