qt实现信息管理系统(学生信息管理系统)功能更完善

news2024/9/23 5:25:27

一、代码地址

信息系统代码地址:https://gitee.com/dxl96/StdMsgSystem

二、基本说明

本学生信息管理系统同升级改造的幅度较大,涉及到的东西对于初学者来说,可能稍显复杂,可以先移步到 https://blog.csdn.net/IT_CREATE/article/details/82027462 查看简易的系统。

本系统引入日志管理,数据库选择支持sqllite、mysql,自定义表信息、查询支持sql where指定,样式设计采用自定义qss文件引入方式,支持表格自适应并且可拖动,支持表格选择列隐藏,表格内容直接输入,背景定时切换、弹出提示框、加载框、查询进度条等等。因为本人时间有限,基础版本已经完成,后续有时间可以继续改造升级,提供给大家学习,注释友好。

三、页面样式

主页面:

自定义表结构页面

 

四、知识点拓展

 涉及到的知识点:

1、如何引入mysql

可参考: https://blog.csdn.net/IT_CREATE/article/details/119155290

 2、如何使用日志系统

可参考:https://blog.csdn.net/IT_CREATE/article/details/119683031

3、如何使表格自适应

可参考:https://blog.csdn.net/IT_CREATE/article/details/118643842

4、其中涉及到提升类

可参考:https://blog.csdn.net/haigear/article/details/128639792

5、如何使用解析json文件

可参考:https://blog.csdn.net/IT_CREATE/article/details/119681949

6、如何添加文件夹

可参考:https://blog.csdn.net/bdhjun123/article/details/80037653

https://blog.csdn.net/weixin_39139505/article/details/102919398

7、如何添加资源文件

可参考:https://blog.csdn.net/weixin_51459144/article/details/125787193

8、qss文件如何引入和使用

可参考:https://blog.csdn.net/m0_73443478/article/details/129100481

其他sql的用法可以上为w3c网站学习 https://www.w3school.com.cn/sql/index.asp

五、文件结构说明

本系统文件结构:

1、mainwindows 文件夹下是主页面涉及的内容

mainwindows->common是主页面右侧列表涉及的内容

mainwindows.cpp就是整个主页面的框架

 2、columnsetting文件夹下是自定义表结构的页面的内容

 3、userdefine文件夹下是一些公共的一些方法、类、常量、自定义加载框、数据库操作通用方法等等内容,也就是可以提取出来供其他任何页面都可以使用的一些内容

4、log文件夹下面主要是和日志系统相关的定义和内容,用来打印、拷贝、记录日志的,和系统不是耦合关系,可以拷贝出来在任何系统使用 

5、resource文件夹下是一些资源文件、包括图片、设置样式的qss文件、设置连接数据库的配置文件

resource->css 该文件夹下存储的qss样式文件

resource->setting 该文件夹下存储的系统连接的数据库信息,可以自己配置连接

6、other file 文件夹是其他文件存放地址

logo.rc 是logo的配置文件

六、一些关键信息

1、只有columnsettingdialog.ui文件用到了提升类的内容,将普通QWidget提升为了自定义的UserDefineWidget,这个自定义的Widge主要就是针对在这个容器内容的所有表格都支持自适应宽度的操作

2、StdMgsystem.pro文件中对于配置的一些说明,要注意看

 3、要切换连接数据库,只需要修改setting.json的文件内容即可,按照说明

 

 4、所有资源配置的加载都在main.cpp中,也就是启动类中

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/732622.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SWAT模型十八个案例教程

详情点击链接:SWAT模型十八个案例教程案例一:基于网络资源的SWAT模型快速建模 案例二:基于遥感产品的SWAT模型率定与验证 案例三:基于水文响应单元(HRU)的水资源时空分布特征 案例四:基于自定义…

【代码随想录day4】链表相交

题目 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据 保证 整个链式结构中不存在环。 注意,函数返回结果后&a…

基于Java网络安全宣传网站设计实现(源码+lw+部署文档+讲解等)

博主介绍:✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专…

硬件性能 - CPU瓶颈分析

简介 本文章通过CPU各个指标项来简单分析是否出现CPU硬件性能瓶颈。其他硬件分析如下: 1. 硬件性能 - 掌握内存知识 2. 硬件性能 - 磁盘瓶颈分析 3. 硬件性能 - 网络瓶颈分析 目录 1. 系统负载 2. CPU利用率 3. 中断占用 4. 上下文切换 1. 系统负载 系统负载是…

【Windows】Redis单机部署

下载redis 下载地址:Releases microsoftarchive/redis GitHub 1、下载后解压,在文件根目录下创建两个文件夹dbcache、logs 修改配置文件redis.windows.conf (1)配置redis地址: bind 127.0.0.1 (2&am…

M62429L音量控制IC驱动

前言 最近项目开发中,要控制AV端的音量,由于主控端的AV音量控制gpio被复用为其它功能口了,不得已增加一个ic去控制音量的输出,这里使用的是M62429L音量控制IC。 1.M62429音量ic概述 M62429L是一款串行数据控制的双声道电子音量控…

用图来理解group by、where、having、聚合函数使用

基本概念: 常用聚合函数:count、max、min、avg、sum,对一整体数据进行计算group by:用来分组where:条件查询having:分组后条件查询 疑问: group by配合聚合函数和where配合聚合函数有什么不同…

【数据结构】24王道考研笔记——串

四、串 串的定义 串(字符串)是由零个或多个字符组成的有限序列。 子串:串中任意个连续的字符组成的子序列主串:包含子串的串字符在主串中的位置:字符在串中的序号子串在主串中的位置:子串的第一个字符在…

Mysql8安装教程与配置

添加密码 出现报错 MySQL error 1042: Unable to connect to any of the specified MySQL hosts. Failed to connect to MySQL Server 8.0.23 after 10 attempts. Ended configuration step: Starting the server 使用WinR --> 运行 “services.msc” --> 打开service服…

Kubernatas Pod卷 - Pod镜像的升级和回滚 - 探针

目录 扩展: Pod创建的拓扑图: 提出的问题: Pod 卷的使用:Pod的数据持久化问题 配置 Pod 以使用卷进行存储 参考文档:配置 Pod 以使用卷进行存储 | Kubernetes 有状态应用和无状态应用: Pod 配置卷 1…

C++好难(8):C++中的继承

目录 1.继承的概念及定义 🍉继承的概念 🍉 继承的定义: 🍒格式定义: 🍒继承关系和访问限定符 🍒继承基类成员访问方式的变化 2.基类和派生类对象赋值转换 3.继承中的作用域: …

分隔链表(大小链表的连接)

题目: 给你一个链表的头节点 head 和一个特定值 x ,请你对链表进行分隔,使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。 你应当 保留 两个分区中每个节点的初始相对位置。 输入:head [1,4,3,2,5,2], x 3 输出&…

前端Vue自定义加载loading组件 通过设置gif实现loading动画 可用于页面请求前loading

随着技术的发展,开发的复杂度也越来越高,传统开发方式将一个系统做成了整块应用,经常出现的情况就是一个小小的改动或者一个小功能的增加可能会引起整体逻辑的修改,造成牵一发而动全身。 通过组件化开发,可以有效实现…

Altermanager安装和使用

1、Altermanager使用 1.1 什么是Alertmanager Alertmanager 与 Prometheus 是相互分离的两个组件,Prometheus 服务器根据报警规则将警报发送给 Alertmanager,然后 Alertmanager 将 silencing、inhibition、aggregation 等消息通过电子邮件、dingtalk …

【每日算法】【219. 存在重复元素 II】

☀️博客主页:CSDN博客主页 💨本文由 我是小狼君 原创,首发于 CSDN💢 🔥学习专栏推荐:面试汇总 ❗️游戏框架专栏推荐:游戏实用框架专栏 ⛅️点赞 👍 收藏 ⭐留言 📝&…

LabVIEW-Solidworks联合仿真

介绍 NI Softmotion介绍 LabVIEW NI SoftMotion 采用高级功能块API (应用程序接口) 便于编写运动程序,该功能块API基于由PLCopen 定义的 Motion Control Library 。SoftMotion 包括用于直线、弧线和轮廓运动的功能块及用于进行电子传动、电子凸轮等高级运行的功能块…

Oracle 的删除

前言 最近在工作中需要将一台电脑上的 Oracle ,删除 Oracle 与删除 MySQL 不太一样,删除 Oracle 还需要删除注册表中的内容,不然重新安装的时候会报错。 关闭服务 win r 开启运行窗口,输入 services.msc 打开服务列表。 将 O…

【Redis故障排查】「连接失败问题排查和解决」带你深入分析一下Redis阻塞原因以及问题排查方案指南

Redis阻塞原因以及问题排查 尽管我们在日常工作中经常使用Redis作为数据库的缓存,以大大减轻数据库压力并提升用户体验,但Redis也可能出现阻塞情况,导致整个系统变慢,进而影响用户体验。 因此,在面对Redis阻塞的情况…

傅里叶变换通俗理解,附python代码

傅里叶变换可以简单理解为用一系列三角函数去拟合一个目标函数。为什么可以用三角函数拟合?因为三角函数 是一组正交基。 先来回顾一下正交的概念,在二维平面坐标系中,与这两个单位向量,正交(内积为0,相互…

单机模型并行最佳实践

单机模型并行最佳实践 模型并行在分布式训练技术中被广泛使用。 先前的帖子已经解释了如何使用DataParallel在多个 GPU 上训练神经网络; 此功能将相同的模型复制到所有 GPU,其中每个 GPU 消耗输入数据的不同分区。 尽管它可以极大地加快训练过程&#x…