getReceivedFilesTableWidget

getReceivedFilesTableWidget

我想在我的QTableWidget中的每一行中添加一个“双击”事件。我怎样才能做到这一点?

下面的函数向QTableWidget添加1行:

void ViewController::addReceivedFileToTable(QString sopInstanceUID, QString sopClassUID, QString fileName)
{
    m_mainWindow.getReceivedFilesTableWidget()->insertRow(0);
    m_mainWindow.getReceivedFilesTableWidget()->setItem(0,0,new QTableWidgetItem(sopInstanceUID));
    m_mainWindow.getReceivedFilesTableWidget()->setItem(0,1,new QTableWidgetItem(sopClassUID));
    m_mainWindow.getReceivedFilesTableWidget()->setItem(0,2,new QTableWidgetItem(fileName));
}

我需要类似的东西:
connect(m_mainWindow.getReceivedFilesTableWidget()->[getRow]->[onDoubleClicked], ....)

最佳答案

您需要连接到QAbstractItemView基类中可用的doubleClicked信号:

connect(m_mainWindow.getReceivedFilesTableWidget(), SIGNAL(doubleClicked(QModelIndex const&)), this, SLOT(onTableItemDoubleClicked(QModelIndex const&)));

您的onTableItemDoubleClicked实现必须使用QTableWidget::itemFromIndex在QModelIndex和QTreeWidgetItem之间进行转换。

关于c++ - 如何在QTableWidget的整个行中添加 'on double clicked'事件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34567156/

10-09 13:33