Qt - QTableView - Clickable button in table row
You could emulate the functionality of a link by underlining the clickable text, then capturing the cell click via the cellClicked(row, col) signal and check that col == editColumn. Then row would correspond to which item you are editing.
For example,
Data Name | Value 1 | Value 2 | Edit
connect (tableWidget, SIGNAL(cellClicked(int,int)), this, SLOT(editSlot(int, int)));
...
void ClassName::editSlot(int row, int col){
if (col == 3) {
doWork(row);
}
}
You can use setIndexWidget
for that, see the Qt documentation for more information.
As an example, to embed a push button in the first column of the second row (untested code):
tableView->setIndexWidget(tableView->model()->index(2, 1), new QPushButton);