
PyQt5开发实战
文章平均质量分 68
以实战为线索,逐步深入PyQt5开发各个环节,掌握常用性能体验优化思路,打造完整工作流,提升工程化编码能力和思维能力。
Zeeland
全栈算法工程师 | 大模型创业 | LangChain Top Contributor | Promptulate founder | 资深Python开发者 |
Github: https://github.com/Undertone0809
展开
-
【PyQt】在QtDesigner中使用自定义组件
本文将介绍pyqt如何在在QtDesigner中使用自定义组件,给出整个流程的方法。这个问题是本文在接触到这个项目时遇到的问题,是一个PyQt的组件库,通过,你可以构建好看的PyQt的UI。问题在这里,,实现了pyqt中的QPushButton等控件,假设名为button.py的PushButton,现在我有一个基于pyqt开发的老项目,想要在尽可能不改动原有代码的前提下进行Button的样式风格进行迁移,迁移成button.py中的button风格...原创 2023-03-28 22:54:10 · 4916 阅读 · 2 评论 -
【cushy-socket】一款轻量级的Python Socket框架
cushy-socket是一个轻量级的Python socket库,相较于传统的socket库,cushy-socket可以创建一个TCP/UDP程序。原创 2023-03-11 09:30:00 · 1480 阅读 · 0 评论 -
【python】基于socket和pyqt的简易聊天室
用pyqt + socket实现一个简单的聊天室1.运行ClientApplication启动服务端2.运行ServerApplication启动客户端3.参考资料Python线程池及其原理和使用(超级详细)python socket编程详细介绍python3 字符串str和bytes的相互转换【快速调用】基于mvc架构的pyqt架构封装【pyqt、mysql、爬虫】python新冠疫情信息管理系统(详细图文)...原创 2022-06-16 00:43:06 · 1377 阅读 · 1 评论 -
【工具】修复语雀转md时图片无法正常外链显示的小工具
语雀直接导出的md里面如果有图片,会无法正常显示,于是做了一个快速转换器,将语雀导出的md文件进行转换,让markdown文件中的图片可以正常显示,方便使用。原创 2022-06-01 22:11:07 · 1332 阅读 · 8 评论 -
【pyqt、mysql、爬虫】python新冠疫情信息管理系统(详细图文)
1.简介python实验作业,正好回顾一下小学二年级学习的pyqt,优化一下以前写的框架。(大二还在写这些,有点惭愧,不想花太多时间写,于是一晚上肝完了)1.本项目在pyqt的框架上进一步封装,基于springMVC架构和springboot架构进行二次架构设计,参考笔者之前写的:【快速调用】基于mvc架构的pyqt架构封装2.代码待整理后开源3.欢迎大家一起交流:群467173055相较于上篇博客,本次架构优化如下:优化了启动类的启动流程添加了页面调度器,可以更加方便的进行页面调度在原创 2022-05-14 02:20:13 · 4303 阅读 · 0 评论 -
用python做一个文件批量名字修改器
前言闲得慌需求把一堆文件放在一个文件夹里面,通过正则表达式匹配特定格式的后缀文件,批量修改同类型的文件,修改为一些有规律的名字。实例长这样直接附上代码(1)UI部分:# -*- coding: utf-8 -*-# Form implementation generated from reading ui file 'UI.ui'## Created by: PyQt5 UI code generator 5.15.1## WARNING: Any manual changes原创 2021-04-07 09:10:21 · 375 阅读 · 2 评论 -
【干货】qtdesigner开发优化技巧
前言因为项目积累出一些自己的qtdesigner设计时的小技巧,现分享给大家。Tip在编辑控件的时候可以创建一个新的QWidget来中介,编辑完了再放回去如图: label居中使用Horizontal Spacer,不要打一堆空格出来 想要达到自适应的效果,在所有控件都编辑完后将整个页面修改为GridLayout每个MainWindow中都可以添加一个TabWidget,新建一页需知,在里面加入readme持续更新…更多:用pyqt打开和读取文档的方法用pyq原创 2021-04-07 08:58:41 · 800 阅读 · 1 评论 -
【干货】用pyqt打开和读取文档的方法
目录前言1.打开文件夹2.打开特定文件名3.打开多个文件4.保存文件前言在pyqt中,有打开文件夹、打开特定文件名、打开多个文件、保存文件这四个功能,下面将详细阐述1.打开文件夹 '''打开文件''' def openFile(self): #其中self指向自身,"读取文件夹"为标题名,"./"为打开时候的当前路径 directory1 = QFileDialog.getExistingDirectory(self,原创 2021-04-07 08:16:53 · 17731 阅读 · 4 评论 -
用pyqt5做一个简易的音乐播放器
前言没什么,就是无聊需求要求可以读取音频文档,有播放和暂停的功能附上代码(1)UI界面# -*- coding: utf-8 -*-# Form implementation generated from reading ui file 'UiForm.ui'## Created by: PyQt5 UI code generator 5.15.1## WARNING: Any manual changes made to this file will be lost when py原创 2021-04-03 07:44:32 · 1773 阅读 · 0 评论 -
pyqt5:pyqt5、pyuic和qtdesigner手把手安装教程
1.前言本文将介绍pyqt的安装教程,在安装教程之前,我们先来认识一下pyqt。pyqt是qt库在python中的移植,它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,Qt很容易扩展,并且允许真正地组件编程。1.1qt的运用QT的运用十分广泛,其中YY、金山WPS等国内知名软件都是用QT构建的,而pyqt将qt库的大部分组件给移植了过来,再加上的p原创 2021-04-02 11:34:58 · 1616 阅读 · 0 评论 -
pyqt上位机开发中的一些优化技巧
一个完美的项目需要很多完美的细节,然而没有经验的新手大多只能通过看别人写多的代码或者自己一遍一遍调试地试错来完善。本人最近根据最近开发的pyqt项目,总结出以下几点优化技巧我的项目需求:制作一个传感器的上位机,要求实现数据的传输、记录、可视化、云端传输等功能,初期使用串口进行调试,也就是python中的serial库。1.多线程多线程一定要开,在刚开始进入界面的时候,要给检测串口一个独立的线程,保证软件的快速启动,不然你就要等待大概5秒左右的时间软件才会启动;在点击检测串口的时候同样要开多线程,保证程原创 2021-03-16 22:26:04 · 748 阅读 · 0 评论 -
python serial串口调试中的可能会产生的一些数据读取异常的问题
记录下几种常见的坑1.timeout与sleep的相对时间设置的不对if __name__ == '__main__': #创建端口对象 ser =serial.Serial() try: #传入参数 ser = serial.Serial("COM5", 115200, timeout=0.01) #连续发送信息 while 1: #传入一个16进制数组 ser.原创 2021-03-16 22:15:30 · 11031 阅读 · 12 评论 -
【串口通信】python serial库时read、readline、read_all等方法的区别
Python中Serial在读取数据的时候具有几种方法,本文将简单介绍一下如何使用serial库解析串口的数据。原创 2021-03-14 22:01:44 · 54945 阅读 · 12 评论 -
【PyQt开发手册】QTimer的使用介绍以及简单用例
1.介绍QTimer是一个定时器,设定定时器可以定时调用函数,如果想要调用定时器来定时调用函数,我们需要先了解一下必要的实例方法2.使用QTimer的简单流程如下首先先创建一个QTimer对象–>通过QTimer中的start方法让它开始计时(start方法可以设定定时运行的时间)–>每当计时的时间超过了给定的时间后,就会调用一次timeout.connect(xx)中的xx函数–>使用完后调用stop方法关闭计时器3.详细流程这里我们设计这样一个项目,通过点击button来开原创 2021-03-07 14:38:06 · 18727 阅读 · 4 评论 -
pyqt中的view/Controller控制模式
复杂的UI制作不可能使用代码一行一行写,因此我们用到了qtdesigner可视化来设计UI,在UI设计好后,有的人会比较疑惑,底层的逻辑实现应该怎样编写呢?qtdesigner自动生成的代码太复杂了我该怎么修改底层逻辑呢?实际上,我们通常将qtdesigner中的test.ui文件生成的代码的和底层逻辑代码分成两个py文件来编写,这样子既可以清晰的分离逻辑和UI;在不手动修改UI代码的原则上,我们可以使用qtdesigner对UI界面进行持续的修改。给定一个用Qtdesigner生成的UI界面from原创 2021-03-04 12:02:09 · 988 阅读 · 1 评论 -
【快速调用】基于mvc架构的pyqt架构封装
最近在用python的pyqt5的GUI库来开发上位机界面,通过一段时间的努力,基本实现数据通信,现写下自己的一些想法1.关于串口通信#串口通过标志信号为转换为一个一个字节#每个字节转换为ASCII码#ASCII码转换为16进制#接受16进制#16进制转换为10进制就是对应所需要的数据在接受串口数据的时候,可能会涉及进制转换的问题,这里附上我的结局方案。"""该测试用于测试连接起与振动传感器之间的通讯关系,并且接受到振动数据 是一个基础的测试模块"""import seria原创 2021-01-11 02:04:27 · 2052 阅读 · 0 评论