資源簡介
qt+mysql 制作簡易的圖書管理系統(tǒng) 有注釋 使用c++在qt5.8平臺開發(fā);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數(shù)據(jù)庫
????db?=?QSqlDatabase::addDatabase(“QMYSQL“);
????//設置主機名
????db.setHostName(“l(fā)ocalhost“);
????//設置數(shù)據(jù)庫名
????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;
????????//根據(jù)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!“);
????????}
????????//搜索的結(jié)果暫存于結(jié)果容器中
????????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
評論
共有 條評論