上一篇我们看了QTableView与QAbstractTableModel的使用,今天再讲讲它的一个子类,QSqlTableModel的使用。
首先说一下QSqlTableModel的用途,当QTableView关联了QSqlTableMode时,tableView上显示的内容就为数据库的某张表显示的内容,并且修改tableView中的内容可以同步到数据库中。
请看如下例子。
MainWindow.h:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
class QSqlTableModel;
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
void initUI();
private:
Ui::MainWindow *ui;
QSqlTableModel* m_pTableModel;
};
#endif // MAINWINDOW_H
MainWindow.cpp:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "dbstorage.h"
#include <QSqlTableModel>
#include <QDebug>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(par