如何双击选择QTableWidget行?

时间:2016-08-19 07:31:57

标签: c++ qt qtablewidget

这是我之前的代码

ui.tableWidget->setSelectionBehavior(QAbstractItemView::SelectRows);
ui.tableWidget->setSelectionMode(QAbstractItemView::SingleSelection);

有了这个,我只需点击一下即可选择行,然后双击以编辑表格的单元格。现在我想反过来一次,单击编辑单元格,然后双击选择行。

只需点击一下即可编辑,代码应为

ui.tableWidget->setEditTriggers(QAbstractItemView::AllEditTriggers);

但是双击选择行,我还不知道。你能救我吗?

1 个答案:

答案 0 :(得分:0)

要捕捉点击和双击,您可以执行以下操作:

connect(ui.tableWidget, &QTableWidget::cellClicked, this, &cellClicked);
connect(ui.tableWidget, &QTableWidget::cellDoubleClicked, this, &cellDoubleClicked);

在这种情况下,cellClickedcellDoubleClicked是您的职能。您可以在这些功能中执行任何操作:

1)选择一行:

void MyClass::cellDoubleClicked(int iRow, int iColumn)
{
  ui.tableWidget->setRangeSelected(QTableWidgetSelectionRange(iRow, 0, iRow, ui.tableWidget->columnCount() - 1), 1);
}

2)打开编辑器(使用QTableWidget::openPersistentEditor