【QT】QTableView获取选中的目标数据

[h2title]三种获取目标对象的方法[/h2title]
  • 选中单个对象时(推荐使用)
    QModelIndex index = ui->tableView->selectionModel()->currentIndex();
    int row = index.row();
  • 选中多个对象时
    QModelIndexList list = ui->tableView->selectedIndexes();
    if (list.count() <= 0) return;
  • 通过Model获取(推荐使用)
    QModelIndexList list = ui->tableView->selectionModel()->selectedIndexes();
    if (list.count() <= 0) return;
[h2title]获取对象中的数据[/h2title]
  • 使用model的data()函数获取
    m_tableModel->data(index)

    这里的index类型为QModelIndex,如果选中了多行可以用

    for (auto index: list)

    遍历每一个index的数据,此处的listQModelIndexList类型,index为QModelIndex类型

  • 此处的data()如果是自定义model的话,可以通过修改data(index,int)实现判断第二个参数int获取到更多index的数据。
点赞

发表回复

电子邮件地址不会被公开。必填项已用 * 标注