30天学会QT---------------大项目之在线考试系统

2024-06-19 09:52

本文主要是介绍30天学会QT---------------大项目之在线考试系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        前段时间真的很忙很忙,忙完这段时间,总算是有空来写文章了,开始写的时候我就以为能够有时间准备和写这个,但是发现有时候忙着忙着就忘记了,没有办法来写项目,真的是非常尴尬。

      现在有时间了,就有充分的时间来写了。

      为了避免笔记断更,我决定先存稿来写。

1、如何规划项目

               说实话,这部分我真的也没有什么经验可以谈,我对类或者设计模式比较弱,基本上需求是什么我就开始写功能,发现重复代码太多了,我也就开始封装一下,其实我对写代码中的各种语法要求或者说一般格式,是非常弱的。目前现在在看一本书,对代码格式也就有一些要求,我尽可能得修改自己的代码,这个项目的代码我已经写了一部分了,所以修改的代码尽可能得按照标准来修改。

       写代码我没有规范可言,都是靠自己去理解,所以可以提一些修改意见,这部分真的没啥经验可以谈的。

        

2、创建项目以及封装

           这是我创建项目的文件夹,文件夹什么作用我在上一期的文章中都说了,目前写好的有登录界面,以及主界面的一些功能,首先来看登录界面。

2.1  登录界面

        登录界面我尽可能的封装了,登录界面主要就是用户名和密码与数据库中的用户名表的用户名和密码作对比,如果相同就可以登录,如果不同就不能登录,为了让登录界面有更好的拓展性,我进行了一些封装。

     1、支持自定义标题

     2、界面返回的是QJsonObject

     3、自定义图片,自定义一些其他的功能

      我程序的页面布局是这样的。

  

我的主页面是amainwidget,为什么要加a呢,是因为这样写的话,它就会在所有cpp中的第一个,文件夹是我对数据源,数据处理,数据显示进行的分类,大家也可以按照自己的习惯来写自己的代码。

      登录界面的代码,我主要放在loginwidget这个窗口类中,

     界面的debug后的成果是这样的:

    

     登录界面支持左侧图片更改,支持左侧图片影藏,支持自定义名称修改,支持显示注册功能,

影藏左侧图片:

2.2  登录界面代码

#ifndef LOGINWIDGET_H
#define LOGINWIDGET_H#include <QWidget>
#include<QJsonObject>
#include<QLabel>
namespace Ui {
class log

这篇关于30天学会QT---------------大项目之在线考试系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1074695

相关文章

精选20个好玩又实用的的Python实战项目(有图文代码)

《精选20个好玩又实用的的Python实战项目(有图文代码)》文章介绍了20个实用Python项目,涵盖游戏开发、工具应用、图像处理、机器学习等,使用Tkinter、PIL、OpenCV、Kivy等库... 目录① 猜字游戏② 闹钟③ 骰子模拟器④ 二维码⑤ 语言检测⑥ 加密和解密⑦ URL缩短⑧ 音乐播放

Springboot项目启动失败提示找不到dao类的解决

《Springboot项目启动失败提示找不到dao类的解决》SpringBoot启动失败,因ProductServiceImpl未正确注入ProductDao,原因:Dao未注册为Bean,解决:在启... 目录错误描述原因解决方法总结***************************APPLICA编

kkFileView在线预览office的常见问题以及解决方案

《kkFileView在线预览office的常见问题以及解决方案》kkFileView在线预览Office常见问题包括base64编码配置、Office组件安装、乱码处理及水印添加,解决方案涉及版本适... 目录kkFileView在线预览office的常见问题1.base642.提示找不到OFFICE组件

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

Linux下在线安装启动VNC教程

《Linux下在线安装启动VNC教程》本文指导在CentOS7上在线安装VNC,包含安装、配置密码、启动/停止、清理重启步骤及注意事项,强调需安装VNC桌面以避免黑屏,并解决端口冲突和目录权限问题... 目录描述安装VNC安装 VNC 桌面可能遇到的问题总结描js述linux中的VNC就类似于Window

在IntelliJ IDEA中高效运行与调试Spring Boot项目的实战步骤

《在IntelliJIDEA中高效运行与调试SpringBoot项目的实战步骤》本章详解SpringBoot项目导入IntelliJIDEA的流程,教授运行与调试技巧,包括断点设置与变量查看,奠定... 目录引言:为良驹配上好鞍一、为何选择IntelliJ IDEA?二、实战:导入并运行你的第一个项目步骤1

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

IntelliJ IDEA2025创建SpringBoot项目的实现步骤

《IntelliJIDEA2025创建SpringBoot项目的实现步骤》本文主要介绍了IntelliJIDEA2025创建SpringBoot项目的实现步骤,文中通过示例代码介绍的非常详细,对大家... 目录一、创建 Spring Boot 项目1. 新建项目2. 基础配置3. 选择依赖4. 生成项目5.

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序