3

我有QTableView几条记录,单行包含四列。我需要获取这 4 个索引值(姓名、姓氏、年龄、用户名)才能将它们删除SQLite,所以我需要将这四个值放入删除查询中。我希望单击该行的每个索引并取回所有 4 个值。我该怎么做?谢谢

4

2 回答 2

7

我看不出有什么问题。QModelIndex您可以获取与给定模型索引相关的任何数据。

void GuiClass::onTableCellClicked(const QModelIndex &index)
{
    int row = index.row();
    QString name = index.sibling(row, 0).data().toString();
    QString surname = index.sibling(row, 1).data().toString();
    int age = index.sibling(row, 2).data().toInt();
    QString username = index.sibling(row, 3).data().toString();
    ...
}
于 2014-01-21T16:19:47.003 回答
0

首先,您需要处理对表格视图的点击。为此,您可以处理QAbstractItemView::clicked(const QModelIndex &index)信号并将其连接到适当的插槽。例如:

void GuiClass::onTableCellClicked(const QModelIndex &index)
{
    QString cellText = index.data().toString();
    [..]
}
于 2014-01-21T15:54:45.353 回答