I require the ability to have a button/link within a table row of a QTableView
. This is to open a dialog to allow that row to be edited more efficiently.
After hours of looking on the web I am yet to find a decent example.
I am aware that this is likely to be done using a QItemDelegate
, but I am unsure how to have a functional widget within the row without forcing the item into edit mode first.
Any help would be greatly appreciated.
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
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):