程序示例精选
VS+Qt+C++银行排队叫号系统
如需安装运行环境或远程调试,见文章底部个人QQ名片,由专业技术人员远程协助!
前言
这篇博客针对<<VS+Qt+C++银行排队叫号系统>>编写代码,带用户登录,管理员登录,增删改查,代码整洁,规则,易读。 学习与应用推荐首选。
文章目录
一、所需工具软件
二、使用步骤
1. 引入库
2. 代码实现
3. 运行结果
三、在线协助
一、所需工具软件
1. VS, Qt
2. C++
二、使用步骤
1.引入库
#pragma once#include <QtWidgets/QMainWindow>
#include "ui_AdminManager.h"#include <QWidget>#include <QtSql/QSqlDatabase>
#include <QtSql/QSqlError>
#include <QtSql/QtSql>
2. 代码实现
代码如下:
#if defined(_MSC_VER) && (_MSC_VER >= 1600)
#pragma execution_character_set("utf-8")
#endif#include "UserManager.h"#include<iostream>
using namespace std;UserManager::UserManager(QWidget *parent): QMainWindow(parent)
{ui.setupUi(this);QObject::connect(ui.pushButton_4, SIGNAL(clicked()), this, SLOT(on_findButton_clicked()));QObject::connect(ui.pushButton, SIGNAL(clicked()), this, SLOT(on_addButton_clicked()));ui.pushButton_4->setVisible(true);//ui.tableWidget->setAlternatingRowColors(true); // 隔行变色//ui.tableWidget->setPalette(QPalette(QColor(220, 250, 255)));//参数还可写成QPalette(Qt::blue)//背景色ui.tableWidget->setStyleSheet("QTableView::Item{background-color:green}");db = QSqlDatabase::addDatabase("QSQLITE");db.setDatabaseName("information.db");// 2. 打开数据库if (!db.open())qDebug() << "open error" << db.lastError();QSqlQuery query;//判断information是否已存在,存在则不创建,不存在这创建QString sqlFindTableName = QString("select count(*) from informationTable where type = 'table' and name='%1'").arg("informationTable"); //功能同上if (!query.exec(sqlFindTableName))qDebug() << "findTable error" << db.lastError();bool isTableExist = query.exec(sqlFindTableName);qDebug() << isTableExist;if (!isTableExist){//表 字段有id name classQString sqlCreate = QString("create table informationTable(id integer primary key autoincrement,""name varchar(20),""gender varchar(20),""age varchar(20),""class int);");if (!query.exec(sqlCreate))qDebug() << "create table error" << db.lastError();}}//显示所有
void UserManager::on_findButton_clicked()
{std::cout << "test_ " << std::endl;if (true == db.open()){QSqlQuery query(db);if (query.exec("select * from informationTable")){ui.tableWidget->clearContents();ui.tableWidget->setRowCount(0);while (query.next()){int rowCount = ui.tableWidget->rowCount();ui.tableWidget->insertRow(rowCount);QTableWidgetItem* columnItem0 = new QTableWidgetItem(query.value(0).toString());QTableWidgetItem* columnItem1 = new QTableWidgetItem(query.value(1).toString());QTableWidgetItem* columnItem2 = new QTableWidgetItem(query.value(2).toString());QTableWidgetItem* columnItem3= new QTableWidgetItem(query.value(3).toString());QTableWidgetItem* columnItem4 = new QTableWidgetItem(query.value(4).toString());ui.tableWidget->setItem(rowCount, 0, columnItem0);ui.tableWidget->setItem(rowCount, 1, columnItem1);ui.tableWidget->setItem(rowCount, 2, columnItem2);ui.tableWidget->setItem(rowCount, 3, columnItem3);ui.tableWidget->setItem(rowCount, 4, columnItem4);}}}}//添加
void UserManager::on_addButton_clicked()
{QString IDEd = ui.idLineEdit->text();if (IDEd != ""){QString status = ui.comboBox->currentText();;//将通过数据库接口的访问,将数据插入到数据库中QSqlQuery query;//QString sqlInert = QString("insert into informationTable(name, class)" "values('%1', %2)").arg(nameEd).arg(classNum);QString sqlInert = QString("insert into informationTable(ID, name)" "values('%1','%2')").arg(IDEd, status);if (!query.exec(sqlInert))qDebug() << "insert data error" << db.lastError();on_findButton_clicked();}
}
3. 运行结果
三、在线协助:
如需安装运行环境或远程调试,见文章底部个人 QQ 名片,由专业技术人员远程协助!
1)远程安装运行环境,代码调试
2)Qt, C++, Python入门指导
3)界面美化
4)软件制作
博主推荐文章:python人脸识别统计人数qt窗体-CSDN博客
博主推荐文章:Python Yolov5火焰烟雾识别源码分享-CSDN博客
Python OpenCV识别行人入口进出人数统计_python识别人数-CSDN博客
个人博客主页:alicema1111的博客_CSDN博客-Python,C++,网页领域博主
博主所有文章点这里:alicema1111的博客_CSDN博客-Python,C++,网页领域博主