qt中table view怎么显示sqlite数据库的内容?
在qt的widget中用tableview显示sqlite数据库表中的内容。 假设有数据库文件test.db,有表table(id integer, name nvarchar(20),age integer),且有数条数据。 首先用qtcreator创建一个基于widget类的窗口,再拖一个tableview到widget中,保存,然后按照如下方法进行: 1.在widget.h中增添头文件:qtsql/qsql.h、qtsql/qsqldatabase、qtsql/qsqlquery、qtsql/qsqlquerymodel 2.在.pro工程文件中添加:qt+=sql 3.在widget.cpp中widget的构造函数中添加如下代码: qsqdatabase db = qsqldatabase::adddatabase("qsqlite"); db.setdatabasename("test.db"); if(!db.open()) { //错误处理 } static qsqlquerymodel *model = new qsqlquerymodel(ui->tableview); model->setquery(qstring("select * from table")); model->setheaderdata(0,qt::horizontal,qobject::tr("编号")); model->setheaderdata(1,qt::horizontal,qobject::tr("姓名")); model->setheaderdata(2,qt::horizontal,qobject::tr("年龄")); ui->tableview->setmodel(model); db->close(); 这样之后,table表里的内容就会显示到tableview中了。 20210311