• 大小: 682KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-08
  • 语言: C/C++
  • 标签: qt  mysql  

资源简介

qt+mysql 制作简易的图书管理系统 有注释 使用c++在qt5.8平台开发;ui设计使用了QT自带的UI工具,自动生成的UI代码也在压缩包中;

资源截图

代码片段和文件信息

#include “bms.h“
#include “ui_bms.h“


Widget::Widget(QWidget *parent) :
    QWidget(parent)
    ui(new Ui::Widget)
{
    ui->setupUi(this);
    createConnection();

    //initial timer to renew time
    timer = new QTimer();
    connect(timer SIGNAL(timeout()) this SLOT(updateTime()));
    timer->start(1000);
    //set initial state
    ui->usertype_edit_label->setText(“tourist“);

}

Widget::~Widget()
{
    delete ui;
}
void Widget::updateTime(){
    QDateTime current_date_time = QDateTime::currentDateTime();
    QString current_date = current_date_time.toString(“yyyy-MM-dd \nhh:mm:ss\n ddd“);
    QString text;
    text = current_date+“ “;
    ui->dataText->setText(text);
}

bool Widget::createConnection(){
    //连接MySQL数据库
    db = QSqlDatabase::addDatabase(“QMYSQL“);
    //设置主机名
    db.setHostName(“localhost“);
    //设置数据库名
    db.setDatabaseName(“Book_Management_System“);
    //设置账号名
    db.setUserName(“root“);
    //设置密码名
    db.setPassword(“gengbiaosql“);
    //设置端口
    db.setPort(3306);
    if(!db.open()){
        QMessageBox::critical(0Qobject::tr(“error“)db.lastError().text());
        return false;
    }
    return true;
}


void Widget::on_treeWidget_clicked(const QModelIndex &index)
{

        QSqlQuery query;
        //QString text =
        QString text_search = ui->treeWidget->currentItem()->text(0);
        qDebug()<        QVectorresult;
        //根据type,在book表中进行检索
        if (text_search == “type“) query.exec(“select * from book“);
        else query.exec(“select * from book where type = ‘“+text_search+“‘“);
        if(!query.isActive()){
            QMessageBox::critical(0Qobject::tr(“error“)“the query isn‘t executed!“);
        }

        //搜索的结果暂存于结果容器中
        result.clear();
        //remember the following code;query.next is the first query!
        while(query.next()){
            QString str = query.value(0).toString();

            for(int i=0;i<9;i++){
                result.push_back(query.value(i).toString());

            }
        }
    //update the tablewidget to display results
      update_tablewidget(ui->tableWidgetresult);

}

void Widget::on_lineEdit_17_returnPressed()//don‘t care this function
{
    QSqlQuery query;
    //QString text =
    QString text_search = ui->lineEdit_17->text();
    qDebug()<
    QVectorresult;
    if (text_search == “type“) query.exec(“select * from book“);
    else query.exec(“select * from book where type = ‘“+text_search+“‘“);

    if(!query.isActive()){
        QMessageBox::critical(0Qobject::tr(“error“)“the query isn‘t executed!“);
    }

    result.clear();
    while(query.next()){
        QString str = query.value(0).toString();

        for(int i=0;i<9;i++){
            result.push_back(query.value(i).toString());

        }
    }
    update_tablewidget(ui->tableWidgetresult);
}

void Widget::on_search_butt

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        3344  2017-04-30 20:21  6.png
     文件       15368  2017-05-25 00:02  bms.cpp
     文件        1805  2017-04-30 20:15  bms.h
     文件       25679  2017-04-30 20:22  bms.ui
     文件          98  2017-04-29 23:50  image.qrc
     文件         280  2017-04-29 20:14  main.cpp
     文件     2311536  2017-05-25 00:02  my_bms.exe
     文件        1223  2017-04-30 19:04  my_bms.pro
     文件       23855  2017-04-30 22:27  my_bms.pro.user
     文件       34260  2017-05-02 12:50  ui_bms.h

评论

共有 条评论