目的

尝试用 PyQt5 以及 QtDesigner 复刻一个 Windows 计算器,加强对 PyQt5 的学习与理解。

目标

尽可能还原 Win11 自带计算器,计划实现 <standard> 以及 <programmer> 两种功能。

环境搭建

安装 PyQt5以及 QtDesigner

# 使用清华镜像源
pip install PyQt5 -i https://pypi.tuna.tsinghua.edu.cn/simplepip install PyQt5Designer -i https://pypi.tuna.tsinghua.edu.cn/simple

检查是否安装成功:

运行 QtDesigner。可以在路径下双击 designer.exe 打开,或者在 terminal 中直接通过命令行打开

# python Script 文件夹需要添加到环境变量 PATH 中
designer.exe

QtDesigner 可以正常打开

创建一个可以运行的空窗口

QtDesigner 新建 UI

打开界面后选择 Main Window 并创建文件,然后 Ctrl+S 保存 UI 文件为 calculator.ui

将 UI 文件生成为对应的 python 文件

这里仿照 QtCreator 的风格,将 UI 文件生成为 python 文件,这样方便之后 coding 的时候 IDE 索引窗口中的组件。

在 terminal 中进入工程目录,然后通过 pyuic5 生成 窗口对应 python class

# 假设工程目录为 C:\your\path\to\ui\filecd C:\your\path\to\ui\filepyuic5.exe -o ui_calculator.py calculator.ui

本机示例:

检查 ui_calculator.py 是否生成

创建 calcMain.py 加载并运行空窗口

from PyQt5 import QtWidgets
from ui_calculator import Ui_MainWindow
import sysclass calcMainWindow(QtWidgets.QMainWindow, Ui_MainWindow):def __init__(self):# init UIQtWidgets.QMainWindow.__init__(self)self.setupUi(self)if __name__ == '__main__':# launch the windowapp = QtWidgets.QApplication(sys.argv)win = calcMainWindow()win.show()sys.exit(app.exec_())
python ./calcMain.py

运行结果:

下一篇计划开始复刻 Standard 版计算器

PyQt5 + QtDesigner 复刻 Windows 计算器 (一)相关推荐

  1. PyQt5 + QtDesigner 复刻 Windows 计算器 (二)

    目标 画一个 <standard> 计算器草稿,并实现相关的基本功能 QtDesigner 画 <standard> 草稿 UI 用 QtDesigner 打开 calcula ...

  2. C++ 复刻Windows 10系统的Tripeaks游戏

    Tripeaks介绍 Tripeaks--这个英文名不知道大家有否听说过(应该挺陌生的),这个游戏不知道大家有否了解尝试过. 其实Tripeaks这个游戏在Windows 10(企业版)系统下可能有出 ...

  3. Bombermaaan-最好的开源炸弹人游戏(支持AI人机对战,SFC复刻版)

    关键词:炸弹人源代码,炸弹人AI算法 目录 一.游戏截图 二.基本信息 三.游戏设计介绍 四.道具说明 五.下载 一.游戏截图       二.基本信息 语言:C++ 平台:Windows / Lin ...

  4. [技美CG]Unity3D复刻UnityShader 之 ShaderToy - Bubbles

    Unity3D复刻UnityShader 之 ShaderToy - Bubbles 背景: 官方地址/参考资料: ShaderToy-Bubbles原始代码: Unity复刻开始 核心显示类: 核心 ...

  5. 论文复刻:排污权机制是否提高了企业全要素生产率(附代码、数据、原文献)

    1.数据来源:自主计算 2.时间跨度:无 3.区域范围:无 4.指标说明: 复刻论文: 任胜钢,郑晶晶,刘东华,陈晓红.排污权交易机制是否提高了企业全要素生产率 --来自中国上市公司的证据(J).中国 ...

  6. 10年代码经验程序员UP主复刻“阴间”超级马里奥,获赞27万,马里奥:我头呢?

    本文转载自 大数据文摘 <超级马里奥兄弟>是很多人童年的回忆,对B站up主"M木糖M"来说也不例外. 为了纪念自己的童年,我们这位代码经验丰富的up主决定自己动手复刻一 ...

  7. C语言初学者复刻经典扫雷小游戏(图形界面,非黑白窗口)(含源码)

    注:除计时器和剩余雷数显示外,其他功能完美还原. 目录 一.程序演示 二.程序信息 1.基础信息 2.前言 3.所需文件 三.代码解析 1.头文件 2.变量声明 3.随机生成雷 4.生成雷位置矩阵 5 ...

  8. t470键盘拆解_复刻经典 ThinkPad 25周年纪念机拆解评析

    1992年第一台ThinkPad笔记本电脑700C问世,截止到去年2017年ThinkPad电脑已经诞生了25年,为了答谢中国的小黑粉丝们,ThinkPad特别推出了一款25周年纪念机型.该机型在原有 ...

  9. 【工作教程】在本地复刻PM系统的过程记录(一)

    为什么要复刻? 公司的PM系统很垃圾,很多查询并不自由.而且慢的一批.你可以理解很多数据库的底层逻辑,以及整个系统之所以蛋疼的地方. 需要的准备 Excel 会使用excel的power query以 ...

最新文章

  1. fedora如何隐藏顶部状态栏_如何使用PDF Arranger来对PDF文件进行排版和修改
  2. [TypeScript][文档]变量
  3. 关于动态门户WEB博雅互动的源代码(HTML+CSS+javascript)
  4. 第十一讲 二阶齐次线性ODE相关理论
  5. Dlib模型人脸特征检测原理及demo
  6. python copy 文件,图片等..
  7. 图像处理与图像识别笔记(五)图像增强2
  8. oracle在线重定义表分区,oracle把一张表在线重定义成分区表
  9. web 端可交互的离线渲染器,求 star~
  10. MongoDB 在windows shell环境下的基本操作和命令的使用示例(一)
  11. python运维开发实战
  12. Linux系统-进程概念
  13. python100例详解-Python 经典算法100及解析(小结)
  14. 淘宝开放平台深入浅出
  15. PS长图快速切片_PS最常用的100多个快捷键
  16. 聊聊钟南山教授,带给我的思考
  17. docker部署redis集群
  18. 泊松分布–计算概率分布的公式
  19. PAT L1-046 整除光棍 光棍当然不是单身汪呢
  20. 鸿蒙内核阅读笔记-任务管理(los_task.c)

热门文章

  1. 用PHP实现单向链表结构
  2. Jutoh for Mac电子书制作工具
  3. 【机器学习|数学基础】Mathematics for Machine Learning系列之线性代数(3):行列式的性质
  4. 简单搞定python进制转换
  5. 盘点微信中被隐藏的实用功能
  6. 三相电压型逆变器控制simulink
  7. Android_如何创建桌面快捷方式
  8. Java正则表达式草稿程序*2
  9. 视频试看(视频预览观看)一小部分的实例
  10. 血性的青,尿性的春——《中国合伙人》影评