データのリストを含むカスタム QAbstractTableModel を用意することを検討してください。現在、あなたと同様の要件を持つプロジェクトがあり、QAbstractTableModel のサブクラス化が機能しています。
QAbstractTableModel で、行ごとにデータのアイテムを返すメソッドを作成しDataClass* getRecord(int row);
、QTableView の行クリック イベントで、メソッドを選択した行に関連付けます。
void MyTable::showEditDialog()
{
MyModel* m = qobject_cast<MyModel*>(model());
QModelIndexList selected = selectionModel()->selectedIndexes();
MyDialog dialog(m->getRecord(selected[0].row()), this);
if (dialog.exec() == QDialog::Accepted)
{
m->refresh(selected[0]);
Q_EMIT contentEdited();
}
} // end_slot(MyTable::showEditDialog)
QAbstractTableModel とモデル ビュー プログラミングのドキュメントについては、こことここを確認してください。