本文共 2050 字,大约阅读时间需要 6 分钟。
一个读取access的例子
1。--------------mydialog.cpp--------------
#include "mydialog.h"
#include <QtGui/QMessageBox>#include <QtGui/QFileDialog>#include <QtCore/QString>#include <QtGui/QFontDialog>#include <QtGui/QIcon>#include <QtSql/QSqlDatabase>#include <QtSql/QSqlQuery>MyDialog::MyDialog(QWidget *parent) : QDialog(parent)
{ setupUi(this); connect(pushButton_3,SIGNAL(clicked()),this,SLOT(pb3_cli()));}MyDialog::~MyDialog()
{}
void MyDialog::pb3_cli()
{ QSqlDatabase db = QSqlDatabase::addDatabase("QODBC"); db.setDatabaseName("DRIVER={Microsoft Access Driver (*.mdb)};FIL={MS Access};DBQ=d:/pr/aa.mdb"); bool ok = db.open(); if(ok) { QMessageBox::information(this,"database","OK,database is opened"); QSqlQuery query; QString s1,s2,s3,s4; query.exec("select * from t"); while(query.next()) { s1 =query.value(0).toString(); lineEdit_1->setText(s1); s2 =query.value(1).toString(); lineEdit_2->setText(s2); s3=query.value(2).toString(); lineEdit_3->setText(s3); s4 =query.value(3).toString(); lineEdit_4->setText(s4); QMessageBox::information(this,"database","next recorder"); } } else QMessageBox::information(this,"database","database Failture"); db.close(); }2.---------------------------------mydialog.h-------------------------------------#include "ui_mydialog.h"
class MyDialog : public QDialog, private Ui::MyDialog{ Q_OBJECTpublic: MyDialog(QWidget *parent = 0); ~MyDialog(); public slots: void pb3_cli();};3.--------------------main.cpp---------------------------------#include <QApplication>
#include <QLabel>#include "mydialog.h"#include <QtGui/QIcon>int main(int argc, char *argv[]){ QApplication app (argc, argv); MyDialog *my = new MyDialog; my->show(); return app.exec();}4.--------------pr.pro------------------------TEMPLATE = app
TARGET = DEPENDPATH += . releaseINCLUDEPATH += .# Input
HEADERS += mydialog.h pr_private.hFORMS += mydialog.uiSOURCES += main.cpp mydialog.cppRESOURCES += pr.qrcRC_FILE = pr.rcQT += sql5.--------------------pr.rc-----------------------
IDI_ICON1 ICON DISCARDABLE "/img/pr.ico"