VS+Qt+C++银行排队叫号系统

这篇具有很好参考价值的文章主要介绍了VS+Qt+C++银行排队叫号系统。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 程序示例精选

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 class
        QString 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. 运行结果

VS+Qt+C++银行排队叫号系统

 VS+Qt+C++银行排队叫号系统

 VS+Qt+C++银行排队叫号系统

 

三、在线协助:

如需安装运行环境或远程调试,见文章底部个人 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++,网页领域博主文章来源地址https://www.toymoban.com/news/detail-433307.html

到了这里,关于VS+Qt+C++银行排队叫号系统的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于51单片机的双机串口通信排队叫号系统(LCD显示)设计

    仿真图:proteus8.9以上 程序代码:KEIL4/KEIL5 原理图:AD 设计编号:A0006 基于51单片机的双机串口通信排队叫号系统(LCD显示)设计 结合实际情况,基于51单片机设计一个排队叫号系统设计。该系统应满足的功能要求为: 由51单片机、按键模块、LCD1602液晶屏、蜂鸣器呼叫模块构成 具

    2024年02月04日
    浏览(45)
  • 0072-基于单片机的排队叫号仿真设计

    1、采用51/52单片机作为主控芯片; 2、采用两个1602液晶,各显示取号和叫号信息; 3、共四个窗口,每个窗口均有单独叫号键及重复叫号键,叫号时会有铃声提醒; 4、有一个取号键,液晶显示您的号码及等待人数;   采用Proteus作为仿真设计工具。Proteus是一款著名的EDA工具(

    2024年02月19日
    浏览(28)
  • 【NJUPT】 数据结构与算法分析_银行排队系统

    银行排队系统 【问题描述】 试设计一个银行排队系统,模拟一般银行的日常对外营业服务,包括顾客到达、等待、办理业务及离开等事件。要求体现“先来先服务”的原则,将传统物理的多个顾客排队队列变为一个逻辑队列处理,顾客只需取票(即刻进队,排队),等待叫

    2024年02月04日
    浏览(53)
  • 银行排队模拟(数据结构--队列)

    既然你点进了这篇博客,想必大概是大一 ,而且学到了队列,刚好严蔚敏老师的数据结构在讲队列的那章讲了银行排队的模拟,为什么我知道呢?因为我就是,好了谢谢你有耐心地看完我说的“废话”,下面我就简述一下,队列的实现就不讲了,很简单就是一个先进先出。

    2024年02月03日
    浏览(32)
  • 「数据结构」第四次作业(2023春 - 银行排队模拟)

    这道题比较难,单独拿出来说。 先再看一遍题目: 题干描述: 【问题描述】 一个系统模仿另一个系统行为的技术称为 模拟 ,如飞行模拟器。模拟可以用来进行方案论证、人员培训和改进服务。计算机技术常用于模拟系统中。 生产者-消费者 (Server-Custom)是常见的应用模式

    2024年02月01日
    浏览(49)
  • 代驾预约小程序系统源码 :提起预约,避免排队 带完整搭建教程

    大家好啊,又到罗峰来给大家分享好用的源码系统的时间了。今天要给大家分享的第一款代驾预约小程序源码系统。传统的代驾服务中,用户往往需要在酒后代驾、长途驾驶等场景下,面对排队等待代驾司机空闲时间的繁琐过程。这不仅浪费了用户的时间和精力,也影响了代

    2024年02月03日
    浏览(45)
  • WPF 医院叫号系统

    C# .Net 4.8 WPF 桌面版医院叫号系统 数据库 SQLServer 2012 数据队列 Redis 日志 log4net         医生客户端登陆 科室设置,医生职称设置,医生科室和房间设置,就诊设置,用户设置,用户就诊记录,医生看诊记录,用户预约记录,用户叫号记录,分配记录,用户扫码机自助扫描签

    2024年02月02日
    浏览(82)
  • vs+opencv+QT调试程序

    2021-09-28vs+opencv+QT简单的图像处理工程_opencv 用qt还是vs_二两山栀子的博客-CSDN博客 【vs+opencv+Qt搭建简单的图像处理界面】https://www.bilibili.com/video/BV16T411j7XQ?vd_source=0aeb782d0b9c2e6b0e0cdea3e2121eba 调试过程一直出现这种问题,后来改DEBUG为release就可以了 mainwindow.hpp mainwindow.cpp

    2024年02月10日
    浏览(34)
  • Qt中实时更新UI程序示例

    Qt在运行时会开启一个主线程,如果没有开启工作线程的话,所有界面上的操作都是在主线程,包括更新界面或者处理数据等操作。我们都知道如果处理数据比较多的话,最好是在单独开启一个线程来处理数据,这样就不会影响主线程的运行。 Windows系统:Windows10 Qt版本:Qt

    2023年04月08日
    浏览(42)
  • 【毕设精选】基于微信小程序的校园跑腿+后台管理系统

    💗全网粉丝10W+、全栈领域优质创作者、掘金、阿里云等社区博客专家、专注于全栈领域和毕业项目实战💗 文章最下面有微信,获取完整源码和数据库,没有套路,没有套路,没有套路!!! 网上大部分的毕设套路如下: 在b站发毕设项目的演示视频,让你免费领取,你领取

    2024年02月13日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包