【发布时间】:2016-02-10 02:25:14
【问题描述】:
我正在使用此代码查询 sqlite 并将结果放在 QTableView 中。
//MainWindow.cpp
void MainWindow::on_pushButton_clicked()
{
QSqlQueryModel * modal=new QSqlQueryModel();
connOpen();
QSqlQuery* qry=new QSqlQuery(mydb);
qry->prepare("select * from database");
qry->exec();
modal->setQuery(*qry);
//from stack
modal->insertColumn(0);
ui->tableView->setModel(modal);
//from stack
ui->tableView->resizeColumnsToContents();
int p;
for(p=0; p<modal->rowCount(); p++)
{
ui->tableView->setIndexWidget(modal->index(p,0),new QCheckBox());
}
connClose();
qDebug() <<(modal->rowCount());
}
我已经看到了几个用于向列添加复选框的网络示例,但我不太确定在我的简单示例中使用什么。
我打算做的是检查第 1 列。在下一次按下 btn 时,如果选中这些数据行,则会将其写入文件。
我仍然需要了解如何遍历所选数据,或者我可能需要获取检查行的 ID 并执行另一个查询。
问题:
- 如何在 QTableView 中添加 1 列可编辑复选框?
- 如何循环访问 QTableView 数据中的值,以便可以访问选中行的值?
- 如何检查全部/无?
【问题讨论】: