QTableView:如何选择数据?

时间:2015-05-21 16:03:33

标签: c++ qt user-interface tableview qt5

我有一个希望简单的问题,我将通过向您展示截图和我的源代码片段来解释它:

enter image description here

我想选择一个像wo_forename或wo_name这样的单元格,此刻我可以从这个单元格中获取此数据。我想要的是以下内容:如果您选择行中的forename或其他内容,我的程序需要知道wo_id。 在左侧的文本标签中,我显示了所选的forename和lastname。

void adminUserData::on_tableView_activated(const QModelIndex &index)
{
QString val;

val = ui->tableView->model()->data(index).toString();
QSqlQuery qry;
qry.prepare("SELECT * FROM worker WHERE wo_id='"+val+"'");
if (qry.exec())
{
   while (qry.next())
   {
      // ui->label_test->setText(qry.value(1).toString());
       val=index.column();
       ui->label_test->setText(val);
       ui->label_test2->setText(qry.value(2).toString());
   }
}
}

如何更改代码以获取ID?

2 个答案:

答案 0 :(得分:0)

QModelIndex first = ui-> tableView-> model() - > index(index.row(),0);

如果我使用它作为" new"它工作的索引=)

答案 1 :(得分:0)

对我来说效果很好

ui->tableView->model()->index(index.row(),0).data().toString();