基于Python架构下的qt可视化用户互动界面

3月24日,由C++架构下的qt转战Python架构下的PySide6

今天做的是一个统计班级量化的基础,因为刚学qt的第一天,所以先是学会了简单的统计整理80分以上,或80分以下的同学,先录入数据:

然后点击统计整理按钮!效果如下:

​ 是不是非常有趣呢!接下来是代码,PySide6是我的版本,记得在运行前修改成自己的版本哦

python 复制代码
from PySide6.QtWidgets import QApplication, QMainWindow, QPushButton, QPlainTextEdit,QMessageBox
# 以上是调用pyside6相关的库,来实现相关效果

def handleCalc():
    info = testEdit.toPlainText()
    fen_above_80f = ''
    fen_below_80f = ''
    for line in info.splitlines():
        if not line.strip():
            continue
        parts = line.split(' ')
        # 去掉列表中的空字符串内容
        parts = [p for p in parts if p]
        name,salary = parts
        if int(salary) >= 80:
            fen_above_80f += name + '\n'
        else:
            fen_below_80f += name + '\n'

    QMessageBox.about(window,
                      '统计结果',
                 f"在80分 以上的有:\n{fen_above_80f}\n在80分以下的有:\n{fen_below_80f}"
                              )
# 实例化对象([])
app =QApplication([])    # 提供了整个图形界面的底层管理功能,比如:初始化、程序入口参数的处理,
                         # 用户事件(对界面的点击、输入、拖拽)分发给各个对应的控件

window = QMainWindow()      # 创建一个主窗口界面
window.resize(500, 500)     # resize决定窗口的大小
window.move(300, 310)       # 控制窗口出现在你显示器的位置
window.setWindowTitle('量化统计')  # 设置窗口的标题栏

testEdit = QPlainTextEdit(window)
testEdit.setPlaceholderText('请输入量化记录') # 文本框内的提示文本
testEdit.move(10, 25)  # 相对于父窗口的位置
testEdit.resize(300, 350) # 决定窗口的大小

button = QPushButton('统计整理', window)
button.move(380, 80)
button.clicked.connect(handleCalc) # button发出了信号,传给handleCalc

window.show() # 展现窗口

app.exec_() # 很重要,死循环
相关推荐
Hone7 小时前
juejin-skills 系列 ②:我把「看掘金热榜」也做成了 Agent 技能
开源·node.js·ai编程
用户956256254297 小时前
跟做:Firecrawl 单页转 Markdown 再丢进沙箱总结
python·api
SelectDB7 小时前
SelectDB 是哪个公司的?是国产数据库吗?一篇讲清飞轮科技与 Apache Doris 的关系
数据库
威哥爱编程7 小时前
模拟面试智能体开发实战 02:回答等半分钟,谁还愿意练?把服务端和流式输出搭起来
python·agent·harmonyos
这个DBA有点耶7 小时前
库内计算推理:一条SQL背后的算子融合,和外挂方案差了几次网络往返
数据库·人工智能·sql
威哥爱编程7 小时前
模拟面试智能体开发实战 01:面试挂了都不知道挂在哪?用 Python 给自己造一个随叫随到的 AI 面试官
python·agent·harmonyos
fthux7 小时前
总想着“忙完再休息”?让 Tick Rest 提醒你,先歇一会儿
开源·github·mac·swift·提醒·消息提醒·tick rest·tick rest for mac·消息提醒app
2601_967980117 小时前
Python行情API量化 02:顺序拉 20 要 2 秒?并发批量把时间压到 0.5 秒
python·api·限流·并发·量化
伞伞悦读7 小时前
【第81期】特征缩放怎么选:标准化、MinMax 与 Robust 的原理、泄漏对照和完整实验
人工智能·python·深度学习·机器学习
新*8 小时前
从一段 WebSocket 代码聊开:bytes 不是 zlib、binaryType 决定一切,15MB 大消息的零拷贝优化
javascript·python·websocket·性能优化·blob·zlib·arraybuffer