如何结束编辑QTableWidgetItem

问题描述:

当某些事件发生时,我需要完成编辑QTableWidget。如何结束编辑QTableWidgetItem

MyWindow::onSomeEvent 
{ 
    // Finish ui->table editing 
    //... 
} 

我该怎么做?


该事件是一个spinbox编辑。当它发生行计数成为它的价值。

我试着发送回车键按下事件。但是,当编辑最后一行中的项目并且新行数量少于当前时,它不起作用。

QKeyEvent *ev = new QKeyEvent(QEvent::KeyRelease, 
           Qt::Key_Return, 
           Qt::NoModifier); 

QApplication::sendEvent(ui->table, ev); 
ui->table->setRowCount(value); 
QApplication::sendEvent(ui->table, ev); 

试试这个:

MyWindow::onSomeEvent() 
{ 
    QKeyEvent *ev = new QKeyEvent(QEvent::KeyRelease,Qt::Key_Return,Qt::NoModifier); 
    QApplication::sendEvent(ui->tableWidget,ev); 
} 

你只是模仿Enter有事时按下。

+0

我不想让表格不可编辑。我想要输入新值来编辑单元格,就像我按下Enter键一样。 – Ufx 2014-09-25 15:49:43

+0

@乌克兰对不起,但我明白,看到我的编辑,我测试它,工作正常。 – Chernobyl 2014-09-25 15:57:12

+0

问题已更新 – Ufx 2014-09-25 16:13:14