gpt4 book ai didi

c++ - 如何在 QTableView 小部件中显示来自 SQLite 数据库的表格?

转载 作者:太空狗 更新时间:2023-10-29 23:16:29 24 4
gpt4 key购买 nike

我创建了一个名为“test.db”的 SQLite 数据库。它只有一个名为“table1”的表,该表不是空表。我试图在 QTableView 小部件中显示“table1”,但小部件没有显示任何内容。数据库已连接,Qt Createor 未检测到任何错误。我不明白为什么 QTableView 什么都不显示。

我的代码:

#include "mainwindow.h"
#include "ui_mainwindow.h"

#include <QtCore>
#include <QSqlDatabase>
#include <QSqlTableModel>

MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)

{
ui->setupUi(this);

QSqlDatabase test = QSqlDatabase::addDatabase("QSQLITE");
test.setDatabaseName("test.db");

if (test.open())
{
ui->DB_Status->setText("DB is connected.");
}
else
{
ui->DB_Status->setText("DB is not connected.");
}

QSqlTableModel *model = new QSqlTableModel(this,test);
model->setTable("table1");
model->setEditStrategy(QSqlTableModel::OnManualSubmit);
model->select();
model->setHeaderData(0, Qt::Horizontal, tr("Row1"));
model->setHeaderData(1, Qt::Horizontal, tr("Row2"));

ui->tableView->setModel(model);
ui->tableView->show();
}

我可以运行该程序,但 QTableView 小部件不显示任何内容。问题出在哪里?

最佳答案

test.setDatabaseName("test.db"); // after this line open database connection.
test.open();

关于c++ - 如何在 QTableView 小部件中显示来自 SQLite 数据库的表格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23750015/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com