【办公类-27-01】20240430开卷竞赛题(GUI界面)+程序打包EXE

1 篇文章 0 订阅
1 篇文章 0 订阅

背景需求:

打开docx,一共有60题,挺多的,

通常我会用CTRL+H,在Word里面搜索关键词,然后找到这道题。

但是有3个问题

1、搜索的文字可能并非整段显示(一部分在上一页内,要滚轮拖动,多用时间)

2、关键词可能有多个,在多个题目内出现,需要点几次才能找到正确的题。

3、字体较小,不适合领导观看

年长者阅读时,文字字体需要放大,

即使找到题目,但很多题目在排在一起,视觉不聚焦。答题有延时。

解决思路:

以前我看到过GUI界面,但是我不会做gui,因此没有尝试过。

但是现在有AI对话大师,用它为我做一个开卷考的“做题神器!”

一、设计GUI界面的搜索题库

AI提问


 

问了13次,AI把“开卷考神器”做好了,我只是修改了字体的大小和GUI的题目

素材路径

代码展示:

'''
目的:X老师党支部书记擂台比武知识竞赛测试(GUI界面)
作者:AI对话大师,阿夏
时间;2024年4月30日
'''


from docx import Document
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QLineEdit, QTextEdit, QVBoxLayout, QPushButton
from PyQt5.QtGui import QFont
from PyQt5.QtCore import Qt

def search_keyword():
    keyword = keyword_input.text()
    paragraphs = []
    
    doc = Document(r'D:\test\02办公类\97X老师的竞赛考核\XX区教育系统基层党组织书记擂台比武知识测试参考题.docx')
    
    for para in doc.paragraphs:
        if keyword in para.text:
            paragraphs.append(para.text)
    
    result_text.clear()  # 清空结果文本框
    
    if paragraphs:
        result_text.append('\n'.join(paragraphs))
    else:
        result_text.append('未找到包含关键词的段落')
    
    keyword_input.returnPressed.disconnect()  # 断开之前的连接
    keyword_input.returnPressed.connect(clear_fields)  # 连接清空函数到returnPressed信号

def clear_fields():
    keyword_input.clear()  # 清空输入框
    result_text.clear()  # 清空结果文本框
    keyword_input.returnPressed.disconnect()  # 断开之前的连接
    keyword_input.returnPressed.connect(search_keyword)  # 连接搜索函数到returnPressed信号

app = QApplication([])
window = QWidget()
window.setWindowTitle("闵行区教育系统基层党组织书记擂台比武参考题")
window.setFixedSize(1900, 1000)  # 设置固定大小
window.setGeometry(0, 0, 400, 300)
# pyinstaller --onefile --add-data "附件1-2闵行区教育系统基层党组织书记擂台比武知识测试参考题.docx;." 97周老师的书记考试回车.py

layout = QVBoxLayout()

label = QLabel("请输入关键词(输入后第1次回车,出现文字,第2次回车,清空文字:")
label_font = QFont("Arial", 40)  # 创建20像素大小的字体对象
label.setFont(label_font)  # 将字体应用于标签
layout.addWidget(label)

keyword_input = QLineEdit()
input_font = QFont("Arial", 40)  # 创建20像素大小的字体对象
keyword_input.setFont(input_font)  # 将字体应用于输入框
keyword_input.returnPressed.connect(search_keyword)  # 将搜索函数连接到returnPressed信号
layout.addWidget(keyword_input)

result_text = QTextEdit()
result_font = QFont("Arial", 40)  # 创建20像素大小的字体对象
result_text.setFont(result_font)  # 将字体应用于文本框
layout.addWidget(result_text)

window.setLayout(layout)
window.show()

app.exec()

执行后出现GUI界面

输入关键词,按1下回车

按第2下回车,自动清除屏幕文字(必须按清除,才能确下一次输入关键词被识别)

再次输入“关键词,”按1下回车

按第2下回车,自动清除屏幕文字(必须按清除,才能确下一次输入关键词被识别)

视频赏析

涉及党务,视频直接被删除了。我换了育婴师考题查询,

20240430育婴师三级单选题(GUI界面搜索)

二、尝试打包EXE

既然AI助力Python,我想试试它会怎么把这个GUi界面文件打包(我想试试其他电脑上是否能执行)

它写出了打包的方法

第1步:安装pyinstaller (在VS code 编译器里终端里)

第2步,看不懂,就问

再问:

第3步:请它举个例子,看看能不能理解,并替换路径和文件名

说明1:为了打包,程序py和考题docx在一个文件夹下

说明2:更改路径

看不懂2,继续问

感觉是用cd 更换路径

先测试一下原来的路径是 D:\test

说明3,安装库

说明4,把docx和py文件名替换(都是一个文件里、同一个路径里)

输入到终端里

说明5,寻找最后生成EXE文件

说明7,exe放到桌面上,双击运行

EXE的路径改变,先出现黑色界面2秒左右

然后出现查询界面,

输入初心+回车,也能查询到docx里面的文字(脱离原来的路径,打包后依旧可以查询)

进行分享:

可以共享在其他电脑执行,,不过可能运行时,360杀毒会提示风险的(自制的EXE总是有这个问题,需要关闭360防火墙)

  • 18
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿夏reasonsummer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值