我正在使用这段代码查询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列可以勾选。在下一次按钮按下时,如果选中了这些数据行,那么这些数据将被写入文件。
我仍然需要了解如何循环遍历所选数据,或者也许我需要获取已选行的ID并进行另一个查询。
问题:
- 如何向QTableView添加1列可编辑复选框?
- 如何循环遍历QTableView数据中的值,以便可以访问所选行的值?
- 如何全选/取消选择?