【问题标题】:QT QTableView get checked itemsQT QTableView 获取检查项目
【发布时间】:2013-08-13 18:40:52
【问题描述】:

我有一个带有复选框的 QTableView 由以下人员创建:

 QStandardItem* checkBox = new QStandardItem(true);
 checkBox->setCheckable(true);
 checkBox->setCheckState(Qt::Unchecked);
 model->setItem(row, 0, checkBox);
ui->tableView->setModel(model);

现在我想获取所有 chceked 行。正如我在许多示例代码中发现的那样,我必须编写如下内容:

 QItemSelectionModel *select = ui->tableView->selectionModel();
 QModelIndexList selectedSensosrs = select->selectedRows();
 for(int i = 0; i < selectedSensosrs.count(); i++)
 {
            //do something
  }

但是这段代码不起作用,即使我检查了几项,计数值也为零! 我寻找了很多更好的方法来做到这一点,但没有找到......:(

谁能帮帮我?

【问题讨论】:

    标签: qt qt5 qtableview qcheckbox


    【解决方案1】:

    对您有一点误解。选定的行不是包含选定复选框的行,而是突出显示的行。恐怕您必须遍历所有单元格并查询 QCheckState。

    【讨论】:

      猜你喜欢
      • 2015-05-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多