【办公类-21-18】20240701 养老护理员初级选择题488,制作PyQt5图形界面GUI

背景需求:

6月16日育婴师高级考完了。运气好,抽到的是”护理患腹泻的幼儿”,“晨检与家长沟通”,“4个月婴儿喂蛋黄”,“21个月食谱”,都是我背过的题目(没有抽到感统)

于是一放假,我又去这个培训机构报了一个“养老护理员五级”,因为非从业,无法申报政府补贴,因此报名老师建议我读个“保育员高级”(幼儿园从业10年可以直接报高级,有补贴,可覆盖学费)。

综合考虑(单位不缺保育员,幼儿人数锐减),我还是自费报了养老护理初级。

老师也说如果想要补贴,她也可以联系将证书挂靠养老机构,但如果被抽查到,会影响信誉(个税上很容易查到)。目前公办教师岗都不是铁饭碗了,我自然不敢舍本求末。

随后老师介绍课程,认为初级护理非常简单,理论全部是判断题,操作只有8题,其中一套2选1。随到随学,每月有考核。

既然容易通过,我就问考完初级,可以再考中级吗?她说必须再等3年,而且最好单位开证明是”保健岗“,才能读。T_T,那就赶紧考完初级,等几年再考。

一、素材整理

报名后,老师把我拉群,并发了一堆“判断题”。

打开一看,是问卷星刷题(一套50题)

一定要答完50题,提交后,才会看到50道答案。

我感觉这个不如”刷题小程序“来的直观(可以直接知道每一题是否正确)。(强推大头先生的计算机二级考试刷题免费程序)

我也想做一个这样的刷题界面,便于刷题(据说养老护理员的判断题,考前刷两天就行了,因为题目少,而且大部分都是常识题,全部选对,都能对一半的那种)

于是我打开每套题目,全部选对,提交后,问卷星显示正确答案,然后用微信截图里面的滚动截屏,把7套50题答案都截图下来

长图截屏

用微信图片打开截图,长按,提取文字

全选复制

黏贴到微信里

然后把文字复制到Word里,用查找替换方式将:”回答正确“替换为”✓,回答错误替换为“×”……反正替换了很长时间,有时候就是手动删除,将一个题目和答案放在一起

再把整理的好题目放到Excel里

二、程序设计

然后就是不断问星火讯飞,怎样做一个gui界面

不断添加需求,一条条测试,终于完成了第一稿的“养老护理员五级判断题488题”的图形用户界面程序.

**PyQt5是一个用于创建图形用户界面(GUI)的Python库,基于Qt库开发**。

代码展示:

'''
项目:养老护理员五级 判断题488题,PyQt5图形用户界面GUI
工具:星火讯飞,阿夏
时间:2024年7月1日
问题:下一页可以完成,上一页没有做出来
'''from PyQt5.QtWidgets import QApplication, QMainWindow, QLabel, QPushButton, QTextEdit
from PyQt5.QtGui import QFont
import sys
from PyQt5.QtCore import Qt
import openpyxldef on_button_clicked():sender = app.sender()if sender.text() == "正确":if sheet.cell(row=row, column=4).value == "正确":label_result.setText("您的回答是✓,回答正确\n正确答案 ✓")label_result.setStyleSheet("color: black;")else:label_result.setText("您的回答是✓,回答错误\n正确答案 ×")label_result.setStyleSheet("color: red;")elif sender.text() == "错误":if sheet.cell(row=row, column=4).value == "错误":label_result.setText("您的回答是×,回答正确\n正确答案 ×")label_result.setStyleSheet("color: black;")else:label_result.setText("您的回答是×,回答错误\n正确答案 ✓")label_result.setStyleSheet("color: red;")def next_question():global rowrow += 1if row > sheet.max_row:row = 2cell_value = sheet.cell(row=row, column=1).valuetext_edit.setPlainText(cell_value)label_result.clear()# def next_question():
#     global row
#     row -= 1
#     if row < 2:
#         row = sheet.max_row
#     cell_value = sheet.cell(row=row, column=1).value
#     text_edit.setPlainText(cell_value)
#     label_result.clear()# 创建应用程序对象
app = QApplication(sys.argv)path=r'C:\Users\jg2yXRZ\OneDrive\桌面\养老护理员APP'# 创建主窗口
window = QMainWindow()
window.setWindowTitle("养老护理初级(五级)判断题488题")
window.setGeometry(50, 50, 600, 900)  # 设置窗口大小和位置# 创建一个标签并设置文本
label = QLabel("养老护理初级(五级)判断题488题", window)
label.setFont(QFont("宋体", 30, QFont.Bold))  # 设置字体为宋体,大小为30磅,加粗
label.setAlignment(Qt.AlignCenter)  # 设置文本居中对齐
label.adjustSize()  # 根据内容调整标签大小
label.move((window.width() - label.width()) // 2, 10)  # 距离顶部10磅位置# 读取Excel文件
workbook = openpyxl.load_workbook(path+r'\养老护理初级题目.xlsx')
sheet = workbook.active
row = 2
cell_value = sheet.cell(row=row, column=1).value# 创建一个文本框并设置文本
text_edit = QTextEdit(window)
text_edit.setPlainText(cell_value)
text_edit.setFont(QFont("宋体", 30, QFont.Bold))  # 设置字体为宋体,大小为30磅,加粗
text_edit.setAlignment(Qt.AlignLeft)  # 设置文本左对齐
text_edit.setFixedWidth(500)  # 设置文本框宽度为800
text_edit.setFixedHeight(400)  # 设置文本框高度为400
text_edit.move((window.width() - text_edit.width()) // 2, 60)  # 将文本框放置在(0,50)的坐标位置# 创建一个点选按钮并设置文本
an=['正确','错误']
zb=['500','600']
for a in range(len(an)):check_button = QPushButton(an[a], window)check_button.setFont(QFont("宋体", 30, QFont.Bold))  # 设置字体为宋体,大小为30磅,加粗check_button.setCheckable(True)  # 设置为可选中状态check_button.resize(100, 50)  # 设置按钮的长宽为40*70check_button.move(50, int(zb[a]))  # 将按钮放置在(300,10)的坐标位置check_button.clicked.connect(on_button_clicked)  # 连接按钮点击事件到处理函数yy=['上一页','下一页']
zb2=['50','400']
# 创建一个点选按钮并设置文本
for y in range(len(yy)):prev_button = QPushButton(yy[y], window)prev_button.setFont(QFont("宋体", 30, QFont.Bold))  # 设置字体为宋体,大小为30磅,加粗prev_button.resize(120, 50)  # 设置按钮的长宽为40*70prev_button.move(int(zb2[y]),840)  # 将按钮放置在(600,10)的坐标位置if y == 1:prev_button.clicked.connect(next_question)  # 连接下一页按钮点击事件到处理函数# 创建一个标签用于显示结果
label_result = QLabel("", window)
label_result.setFont(QFont("宋体", 20, QFont.Bold))  # 设置字体为宋体,大小为30磅,加粗
label_result.setAlignment(Qt.AlignCenter)  # 设置文本居中对齐
label_result.adjustSize()  # 根据内容调整标签大小
label_result.resize(500, 100)  # 设置按钮的长宽为40*70
label_result.move(50, 700)  # 将标签放置在(0,300)的坐标位置# 显示窗口
window.show()# 运行应用程序的主循环
sys.exit(app.exec_())

视频展示:

图片展示

选对了,就是黑色文字

选错了,就是红色文字

选对了,就是黑色文字

选错了,就是红色文字。

目前上一页按钮还没有做出来,没法打包。明天再试试

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

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

相关文章

【C语言】解决C语言报错:Invalid Pointer

文章目录 简介什么是Invalid PointerInvalid Pointer的常见原因如何检测和调试Invalid Pointer解决Invalid Pointer的最佳实践详细实例解析示例1&#xff1a;未初始化的指针示例2&#xff1a;已释放的指针示例3&#xff1a;返回局部变量的指针示例4&#xff1a;野指针 进一步阅…

three.js获取深度图

在Three.js中&#xff0c;获取深度图&#xff08;Depth Map&#xff09;通常涉及几个步骤。深度图是一个图像&#xff0c;其中每个像素的值表示从摄像机到场景中相应点的距离。以下是如何在Three.js中获取深度图的基本步骤&#xff1a; 设置WebGLRenderer&#xff1a;确保你的T…

Android裁剪内核后编译报错compatibility matrix

【问题描述】&#xff1a; 优化开机速度&#xff0c;裁剪kernel&#xff0c;注释掉模型模块后如&#xff1a;# CONFIG_HID_SONY is not set&#xff0c;出现编译报错。 checkvintf E 07-01 16:32:02 160 160 check_vintf.cpp:620] files are incompatible: Runtime info a…

《化学工程与装备》是什么级别的期刊?是正规期刊吗?能评职称吗?

​问题解答 问&#xff1a;《化学工程与装备》是不是核心期刊&#xff1f; 答&#xff1a;不是&#xff0c;是知网收录的第一批认定学术期刊。 问&#xff1a;《化学工程与装备》级别&#xff1f; 答&#xff1a;省级。主管单位&#xff1a;福建石油化工集团有限责任公司 …

昇思25天学习打卡营第6天|网络构建

网络构建 概念模型模型参数 概念 神经网络模型是由神经网络层和Tensor操作构成的&#xff0c;mindspore.nn提供了常见神经网络层的实现&#xff0c;在MindSpore中&#xff0c;Cell类是构建所有网络的基类&#xff0c;也是网络的基本单元。一个神经网络模型表示为一个Cell&…

技术革新:如何用数据中台实现数字化转型

作为程序员&#xff0c;我们总是对技术如何改变企业运作充满好奇。今天&#xff0c;我们将深入探讨森马集团如何利用数据中台技术&#xff0c;实现从传统数据分析到数字化转型的华丽转身。 1. 技术背景&#xff1a;森马集团的数字化挑战 森马集团&#xff0c;一个在服饰行业占…

[单master节点k8s部署]8.pod健康探测

k8s默认的健康检查机制是&#xff0c;每个容器都有一个监控进程&#xff0c;如果进程退出时返回码非零&#xff0c;则认为容器发生故障。 存活探测 监测pod是否处于运行状态&#xff0c;当liveness probe探测失败的时候&#xff0c;根据重启策略判断是否需要重启。适用于需要…

【Win测试】窗口捕获的学习笔记

2 辨析笔记 2.1 mss&#xff1a;捕获屏幕可见区域&#xff0c;不适合捕获后台应用 Claude-3.5-Sonnet: MSS库可以用来捕获屏幕上可见的内容&#xff1b;然而&#xff0c;如果游戏窗口被其他窗口完全遮挡或最小化&#xff0c;MSS将无法捕获到被遮挡的游戏窗口内容&#xff0c;而…

天津惠灵顿:从心,致逐梦康桥|在这所天津国际学校从容不迫中走近梦想

在刚刚落下帷幕的申请季中&#xff0c;来自惠灵顿天津校区的Herman&#xff0c;陆续收到了剑桥大学、帝国理工学院、纽约大学、瓦萨学院等10余封录取通知书。面对纷至沓来的名校肯定&#xff0c;经历了短暂的尘埃落定的喜悦&#xff0c;Herman很快恢复了往日里的泰然自若。在他…

cv::Mat类的矩阵内容输出的各种格式的例子

操作系统&#xff1a;ubuntu22.04OpenCV版本&#xff1a;OpenCV4.9IDE:Visual Studio Code编程语言&#xff1a;C11 功能描述 我们可以这样使用&#xff1a;cv::Mat M(…); cout << M;&#xff0c;直接将矩阵内容输出到控制台。 输出格式支持多种风格&#xff0c;包括O…

第5章:Electron加载与显示内容(2)

5.4 加载和显示不同类型的资源 Electron 支持加载和显示多种类型的资源&#xff0c;包括图片、视频和其他静态文件。 5.4.1 加载图片的示例代码 index.html&#xff1a; <!DOCTYPE html> <html> <head><title>Load Image</title> </head&…

字符串常量池StringTable

String s1 "a"; 从常量池中取符号a->运行时常量池 ->"a"放入字符串常量池 -> 给s1 String s2 "b"; String s3 s1s2; 创建 new StringBuilder().append("a").append("b").toString() String s4 "a"&q…

鸿蒙使用 @Builder扩展出来的布局数据更新没法更新UI

由于业务的复杂&#xff0c;所以我们把相关UI抽离出来。但是数据变化了&#xff0c;没法更新UI Builder MyGridLayout() { } 通过日志打印发现数据的确是更新了&#xff0c;但是UI就没没办法&#xff0c;如何解决呢 Entry Component struct Page35 {// State sArray: bool…

【ajax实战09】内容管理页面——删除功能

本文章目标&#xff1a;点击删除图标实现对应数据删除 实现步骤如下&#xff1a; 一&#xff1a;将服务器端获取数据中数据id值绑定到删除图标&#xff08;重点&#xff09; 即在渲染时&#xff0c;利用自定义属性&#xff0c;为td设置id值 <td data-id "${ele.id}…

CEPH client.admin key获取

通过初始化完毕后&#xff0c;admin节点会在/etc/ceph目标下生成对应的配置文件和对应的key文件&#xff0c;通过ceph orch host add 增加的默认是没有的 如果很不幸admin节点挂了&#xff0c;怎么在其它节点使用ceph -s 命令呢 启蒙方法(比较实用) key可以通过ceph auth expor…

chunkers/maxent_ne_chunker/english_ace_multiclass.pickle 找不到

首先在这个nltk_data &#xff1a; NLTK Data官方下的数据集&#xff0c;找不到english_ace_multiclass.pic 说明缺少这个文件 : 那么在 nlp/resources/chunkers/maxent_ne_chunker/english_ace_multiclass.pickle at master teropa/nlp (github.com) 下载那两个文件 : 然…

在Vue3项目中引入Vite进行热更新

第一步&#xff1a;初始化一个Vue3项目&#xff0c;可以使用Vue CLI 在开始之前&#xff0c;我们需要确保已经安装了Vue CLI。可以通过以下命令安装Vue CLI&#xff1a; bash npm install -g vue/cli 接下来&#xff0c;使用Vue CLI初始化一个Vue3项目&#xff1a; bash vue …

基于SpringBoot的CSGO赛事管理系统

您好&#xff01;我是专注于计算机技术研究的码农小野。如果您对CSGO赛事管理系统感兴趣或有相关开发需求&#xff0c;欢迎随时联系我。 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringBoot框架&#xff0c;Java技术 工具&#xff1a;Eclipse&a…

迈阿密色主题学科 HTML5静态导航源码

源码介绍 迈阿密色主题学科 HTML5静态导航源码&#xff0c;源码直接上传可用&#xff0c;有技术的可以拿去写个后端搜索调用百度接口&#xff0c;也可用于做引导页下面加你网址添加一个A标签就行了&#xff0c;很简单&#xff0c;需要的朋友就拿去吧 界面预览 源码下载 迈阿…

安装Anaconda + tensorflow

安装Anaconda tensorflow 下载Anaconda&#xff08;64位&#xff09; https://www.anaconda.com/download/ Anaconda3-xxxxxx-Windows-x86_64&#xff08;不要装最新的版本&#xff0c;确保Python是3.7&#xff09; 各种Anaconda老版本&#xff1a; https://mirrors.tuna.ts…