![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
使用PyQt开发图形界面Python应用
文章平均质量分 50
Qt是跨平台的C++图形界面开发平台,开发的应用可以跨平台使用,PyQt是基于Qt基础之上进行的Python封装,既能利用Qt图形界面开发的便捷性和内部实现的高效性,又能利用Python语言的便捷性和优雅特色。本课程介绍基于Qt Designer的图形设计Python应用。
皓月盈江
这个作者很懒,什么都没留下…
展开
-
Qt Creator创建Python界面工程并打包为可执行exe文件
Qt Creator创建Python界面工程并打包为可执行exe文件原创 2023-02-06 21:47:09 · 1599 阅读 · 0 评论 -
PyQt5单击QTableView垂直表头verticalHeader获取行数据以及单击单元格获取行数据操作
PyQt5单击QTableView单元格获取单元格数据,很容易实现,从而可以实现获取这一行的数据。但是单击QTableView垂直表头verticalHeader获取行数据,我摸索了一周时间才解决,下面分享下重点。原创 2022-07-18 21:54:35 · 2028 阅读 · 0 评论 -
PyQt5中多线程模块QThread解决界面卡顿无响应问题,线程池ThreadPoolExecutor解决多任务耗时操作问题
PyQt5中多线程模块QThread解决界面卡顿无响应问题,线程池ThreadPoolExecutor解决多任务耗时操作问题。原创 2022-07-09 20:33:00 · 2621 阅读 · 0 评论 -
Linux Debian11安装MySQL8详细教程
DBeaver是一个免费的多平台数据库工具,适用于开发人员、数据库管理员、分析师和所有需要使用数据库的人。 同时,DBeaver 通过 JDBC 连接到数据库,可以支持几乎所有的数据库产品:MySQL、PostgreSQL、SQLite、Oracle、DB2、SQL Server、Sybase、MS Access、Teradata、Firebird、Apache Hive、Phoenix、Presto 等。原创 2022-05-04 17:34:46 · 3318 阅读 · 0 评论 -
Python PyCharm利用PyQt5使QPlainTextEdit支持拖放文件,类提升,重写QPlainTextEdit类
一、利用PyCharm新建基于PyQt5对话框工程MyMainTest,添加QPlainTextEdit控件,保存主窗口MyQTMainForm.ui文件运行如下:二、新建myqplaintextedit.py文件,创建MyQPlainTextEdit类继承于QPlainTextEdit,只允许excel(.xls或.xlsx)文件拖放,及信号发射处理。代码如下:# -*- coding: utf-8 -*-from PyQt5.QtCore import pyqtSignalfrom PyQt5原创 2022-02-15 16:44:55 · 694 阅读 · 0 评论 -
Python对 txt 文件进行读写、清除和删除操作
一、文件读写1.推荐使用:通过 with open( ) as f: 来打开文件,这种方法会自动关闭文件文件操作模式表:‘r’ 读取模式(默认值)‘w’ 写入模式‘x’ 独占写入模式‘a’ 附加模式‘b’ 二进制模式(与其他模式结合使用)‘t’ 文本模式(默认值,与其他模式结合使用)‘+’ 读写模式(与其他模式结合使用)推荐:当每次对文件进行读写时都要删除之前的内容,使用 ‘w+’当每次读写文件都是在文件末尾增添内容,使用 ‘a+’2.写入文件内容w原创 2022-01-31 11:19:43 · 8027 阅读 · 1 评论 -
Python利用multiprocessing实现多进程,Pyinstaller打包python多进程程序出现多个窗口
一、为什么需要采用multiprocessing多线程技术自己在做文件Hash校验工具V1.0小工具软件时,需要读取文件,计算文件的MD5、SHA1、SHA256和CRC32这些Hash值,对于小文件能够很快计算出hash值,但是对于大文件需要花费一些时间,不知道进度如何?使用进度条指示也无法正确显示进度。后来经过查询资料,使用了multiprocessing多线程技术,这个问题得以解决。下面贴出我测试多线程的部分代码:main.py"""python主文件"""# -*- coding:原创 2022-01-29 17:29:40 · 1526 阅读 · 0 评论 -
PyQt5在对话框中打开外部链接的方法
利用PyQt5部分控件的Link属性链接PyQt5有几个控件带有 setOpenExternalLinks , 如 QLabel、QTextLabel 、 QTextBrowser 等当 setOpenExternalLinks 值为TURE 表示可通过html 添加 A 标签打开外部链接, 如设置:我测试的是 QLabel 标签控件self.label.setOpenExternalLinks(True)self.label.setText(u'<a href="https://原创 2022-01-29 11:50:40 · 1366 阅读 · 2 评论 -
Python计算校验文件的MD5、SHA1、SHA256和CRC32,获取文件创建日期、修改日期和文件大小
Python计算校验文件的MD5、SHA1、SHA256和CRC32,获取文件大小、创建时间和修改日期。原创 2022-01-26 17:53:07 · 957 阅读 · 0 评论 -
Win10专业版系统PyCharm专业版使用WSL(ubuntu20.04 LTS)配置Docker解释器配置环境详细教程
提前准备好环境:Win10x64专业版21H2;WSL的ubuntu20.04系统;PyCharm2020专业版;Docker for Windows软件稳定版。一、Win10系统安装WSL(ubuntu20.04 LTS)子系统1.按照下图,开启“适用于Linux的Windows子系统”和“虚拟机平台”功能,按照提示重启计算机。2.在Microsoft Store商店中搜索并安装ubuntu20.04LTS系统3.配置WSL(ubuntu20.04)linux系统可以使用SSH工具远原创 2022-01-02 23:44:19 · 1289 阅读 · 0 评论 -
python设置本机IP地址、子网掩码、DNS,获取本机IP地址、子网掩码、DNS、MAC
python设置本机IP地址、子网掩码、DNS,获取本机IP地址、子网掩码、DNS、MACmain.py"""=== coding: UTF8 ==="""import uuidimport wmi# IP地址arrIPAddresses = ['192.168.30.79']# 子网掩码arrSubnetMasks = ['255.255.255.0']# 默认网关arrDefaultGateways = ['192.168.30.1']arrGatewayCostMetrics原创 2021-10-21 22:21:36 · 1274 阅读 · 0 评论 -
python 多线程 popen ping指定IP是否在线 判断连通
import timeimport osstatus1 = 'ping success'status2 = 'ping fail'def pingComputer(): for i in range(1, 256): host = '192.168.2.' + str(i) nowTime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())) p = os.p原创 2021-10-18 21:24:15 · 904 阅读 · 0 评论 -
python lxml xpath爬取图片代码
main.py"""=== coding: UTF8 ==="""import requestsfrom lxml import etreeimport osimport timeclass Mzitu: def __init__(self): """ @function:初始化 @parameter:无 @return:无 """ # 首页 self.urlFrontPa原创 2021-10-11 22:03:36 · 345 阅读 · 0 评论 -
python爬虫获取中国天气网天气数据 requests BeautifulSoup re
python获取中国天气网天气数据:http://www.weather.com.cn/textFC/henan.shtmlmain.py# -*- coding: utf-8 -*-import requestsfrom xpinyin import Pinyinfrom bs4 import BeautifulSoupimport re"""=================================================================主函数==原创 2021-09-24 21:49:06 · 458 阅读 · 0 评论 -
Python操作mySql数据库封装类
这是自己在做项目过程中,整理封装的操作mysql数据库封装类,自己可以修改下使用,节省大量时间。myGlobal.py# -*- coding: utf-8 -*-global globalListIPValid # 保存一个VLAN全局可用IP列表myPySql.py# -*- coding: utf-8 -*-import reimport pymysqlimport myGlobal # myGlobal全局变量文件class MySql: """ pyt原创 2021-09-06 15:00:08 · 808 阅读 · 0 评论 -
Python操作excel(.xlsx)封装类MyPyExcel V2.0
这是自己在做项目过程中,整理封装的Python操作excel(.xlsx)封装类MyPyExcel。都是项目实践过的,可直接拿来使用!myPyDoExcel.py"""================================================Python模块:Python操作excel(.xlsx)封装类MyPyExcelVersion:V2.0Date:2021年08月06日================================================原创 2021-09-06 14:46:59 · 129 阅读 · 0 评论 -
Python:通过SNMP协议获取H3C、华为交换机的VLAN信息及ARP地址表
我测试是H3C S3600交换机和华为S3700交换机交换机SNMP配置system-view 进入交换机的配置模式配置community 只读属性为public,且配置版本为所有# [switch]snmp-agent [switch]snmp-agent local-engineid 80006782000FE2F882956810 [switch]snmp-agent community read public [switch]snmp-agent sys-info version a原创 2021-08-28 11:43:04 · 2219 阅读 · 0 评论 -
Python获取电脑CPU序列号、主板序列号、BIOS序列号、硬盘序列号列表、网卡MAC地址
python可以获取电脑主机的硬件信息,自己封装的一个类。# -*- coding: utf-8 -*-import wmiclass HardwareInfo: def __init__(self): self.c = wmi.WMI() self.strCPUSn = "" # CPU序列号 self.strBoardSn = "" # 主板序列号 self.strBiosSn = "" # BIOS序列号原创 2021-08-20 14:18:40 · 2594 阅读 · 0 评论 -
mysql 数据库文件导入和导出、远程上传和下载数据库
1.打开数据库操作软件:Navicat Premium 15 中文版,登录测试连接!2.打开本地mysql 数据库,新建数据库的名字必须和要导入的数据库名字一致。字符集和排序规则按下图设置即可。3. 打开刚才新建的数据库,右键,“运行SQL 文件…”找到需要导入的数据库文件,打开即可4.点击“开始”,导入至提示成功完成即可。5.数据库需要从mysql 数据库导出,按照下图操作,保存数据库文件即可。6. 需要远程导入和导出数据库,首先需要计算机登录连接目标数据库服务器主原创 2021-08-14 16:22:41 · 302 阅读 · 0 评论 -
Python RSA加密与解密 公钥和私钥 读写pem文件
非对称加密算法:文件加密需要公开密钥(publickey)和私有密钥(privatekey)。接收方在发送消息前需要事先生成公钥和私钥,然后将公钥发送给发送方。发送放收到公钥后,将待发送数据用公钥加密,发送给接收方。接收到收到数据后,用私钥解密。在这个过程中,公钥负责加密,私钥负责解密,数据在传输过程中即使被截获,攻击者由于没有私钥,因此也无法破解。非对称加密算法的加解密速度低于对称加密算法,但是安全性更高。非对称加密算法:RSA、DSA、ECC等算法RSA加密公钥加密算法,一种非对称密码算法原创 2021-08-13 10:12:51 · 1862 阅读 · 0 评论 -
局域网内Windows允许其他电脑指定IP访问本地mysql-8.0.23数据库
第一步:用ping命令测试两台电脑是否连通如果两台电脑是连通的请转到第二步,如果是非连通的请进行如下操作:1、进入控制面板,打开Windows Defender 防火墙,点击高级设置(本人用的是Windows10,其他Windows版本操作类似)2、在新弹出的页面中点击入站规则,在入站规则中找到 文件与打印机共享(回显请求–ICMPv4-In)有两个,然后启用规则正常情况下Windows防火墙会阻挡对本机的ping请求,这是因为计算机禁用了ICMP回显功能,我们只需要把它启用就好了。第二步:添原创 2021-08-06 23:33:49 · 773 阅读 · 0 评论 -
十六、Python操作excel(.xlsx)封装类MyPyExce
自己利用python编写的操作excel封装类"""================================================Python模块:Python操作excel(.xlsx)封装类MyPyExcelDate:2020年10月06日================================================"""import openpyxlfrom openpyxl.utils import column_index_from_strin原创 2021-06-07 22:06:24 · 188 阅读 · 1 评论 -
十五、Python操作mysql数据库
利用Navicat Premium 15软件连接mysql数据库,新建testdb数据库,并添加2个表usertest和userinfo。原创 2021-05-29 18:13:09 · 3604 阅读 · 19 评论 -
十四、PyCharm开发Python利用WMI修改电脑IP、DNS
1.在PyCharm开发中安装WMI插件搜索需要添加的WM插件,并安装,安装成功后会有提示!2.源代码:"""=== coding: UTF8 ==="""import wmi# DNS列表arrDNS = ['114.114.114.114', '114.114.115.115']'''================DNS操作类================'''class DnsDef(object): """初始化函数""" def __init__原创 2020-08-07 11:49:15 · 1184 阅读 · 3 评论 -
十三、PyQt5的QFileDialog文件打开、文件保存、文件夹选择对话框
import PyQt5.QtCore,PyQt5.QtGui # 获取文件路径对话框file_name = QFileDialog.getOpenFileName(self,"open file dialog","C:\Users\Administrator\Desktop","Txt files(*.txt)") ##"open file Dialog "为文件对话框的标题,第三个是打开的默认路径,第四个是文件类型过滤器 # 保存文件对话框file_path = QFil原创 2020-10-27 21:50:43 · 10947 阅读 · 4 评论 -
十二、ubuntu20.10(Linux)下Pycharm配置pyqt5开发环境
IntroductionPyQt是Python语言的GUI编程解决方案之一。可以用来代替Python内置的Tkinter。其它替代者还有PyGTK、wxPython等。与Qt一样,PyQt是一个自由软件。在Linux下使用pycharm写python是最舒服的。本文介绍了Linux下pycharm qt5开发环境的配置。0.安装python3ubuntu20.04下默认都安装了python3,不必在安装了,跳过这一步1.安装pyqt# 直接安装所有包即可,不大sudo apt-get inst原创 2021-01-26 23:28:33 · 2826 阅读 · 4 评论 -
十一、PyQt5点击主窗口弹出另一个非模态子窗口
单击主对话框菜单“设置“下的”交换机配置”action的信号与槽主对话框代码:# -*- coding: utf-8 -*-import sysfrom PyQt5 import QtCorefrom PyQt5.QtWidgets import QApplication, QMainWindow, QDialog, QDesktopWidgetimport win32apiimport win32conimport LanIPView # LanIPView.py文件class原创 2021-04-01 16:22:44 · 567 阅读 · 0 评论 -
十、封装python3读写ini文件类
main.py# -*- coding: utf-8 -*-import osimport configparserimport win32apiimport win32conclass OperateIniFile: """ python操作ini文件类 """ def __init__(self, strOpenFileName): """ 初始化 """ self.iniFilePath原创 2021-04-02 17:19:34 · 338 阅读 · 0 评论 -
九、PyQt5 QLineEdit输入的子网字符串校验QRegExp
自己编写的用于对lineEdit编辑框输入的子网,例如:192.168.60.1/24字符串校验是否合规。 # 限制lineEdit编辑框只能输入./字符和数字 reg = QRegExp('[0-9./]+$') validator = QRegExpValidator(self) validator.setRegExp(reg) self.lineEditSubNet.setValidator(validator) d原创 2021-04-04 17:30:57 · 651 阅读 · 1 评论 -
八、python编写IP地址计算第一个可用IP地址、最后一个可用IP地址、网络号、广播地址、主机数
"""=== coding: UTF8 ==="""# 斜线记法,要求子网掩码整数(nSubnet个1):32>=nSubnetMask>=0class IP: def __init__(self, strIP, nSubnetMask): self.strIP = strIP # IP字符串 self.nSubnetMask = nSubnetMask # 子网掩码nSubnetMask个1 self.subnetMaskTo原创 2021-04-10 16:36:59 · 1597 阅读 · 0 评论 -
七.PyQt5定时器QTimer的使用
一、定时器基本使用周期性的进行某种操作,PyQt5就提供了一个定时器QTimer来实现这种操作from PyQt5.QtCore import QTimer首先需要引入QTimer模块self.timer = QTimer(self) #初始化一个定时器self.timer.timeout.connect(self.operate) #计时结束调用operate()方法self.timer.start(1000) #设置计时间隔并启动,1秒然后实例化一个QTimer对象,将timeout信原创 2021-05-29 23:17:58 · 3038 阅读 · 0 评论 -
六、PyQt5 QTreeWidget操作,获取树控件所有2级目录内容
树控件只有2级目录,可以存储在字典中# 树控件的字典,例如:dictTree = {"营销部": ["一班班", "二班"]} self.dictTree = {}# -*- coding: utf-8 -*-from PyQt5.QtCore import pyqtSignalfrom PyQt5.QtWidgets import QMainWindow, QDialog, QDesktopWidget, QTreeWidgetItem, QMessageBoximport I原创 2021-04-17 01:16:41 · 2235 阅读 · 5 评论 -
五、QPushButton按钮和QLineEdit控件操作
在第四节基础上,下面来进行QPushButton按钮和QLineEdit控件操作。1.在主界面添加三个QLineEdit编辑框(其控件对象依次为lineEditNum1、lineEditNum2、lineEditSum)存放整数和一个按钮(其控件对象btnCalculate及5个QLable,进行2个数和的计算。2.为按钮添加信号槽函数单击“编辑信号/槽”菜单,鼠标左键拖动按钮出现红色信号指向主对话框松开鼠标左键后,在弹出的配置连接对话框中,左侧选择clicked()单击信号,右侧点击“编辑”原创 2021-05-02 22:25:02 · 957 阅读 · 0 评论 -
四、PyCharm PyQt5创建主窗口详细教程
1.打开PyCharm,新建工程MyMainTest2.按照Tools-External Tools-QtDesigner,打开QT设计界面,保存窗体文件。3.将刚才的窗体文件.ui生成.py文件4.删除main.py文件中所有内容,复制粘贴下面代码(下面代码可以作为一个创建主窗口的模板代码):main.py"""python主文件"""# -*- coding: utf-8 -*-import sysfrom PyQt5.QtWidgets import QApplic原创 2021-04-14 20:31:55 · 1303 阅读 · 0 评论 -
三、Win10 64位PyCharm下打包.py程序为可执行exe文件且兼容32位和64位
WIN10 64位下Pycharm打包.py程序为可执行文件exe上面衔接WIN10 64位下Pycharm打包.py程序为可执行文件exe,存在不兼容32位和64位的情况。下面Win10 64位PyCharm下打包.py程序为可执行exe文件且兼容32位和64位说明:前提条件python3.8.2 32 位;注意:原来有 64 位 Python3.8.2 无须卸载win10/win7 64位操作系统PyCharm 编译工具pip/pip3,PyCharm 可在终端检测是否安装:pip3 -V原创 2021-01-11 22:58:46 · 1568 阅读 · 1 评论 -
二、WIN10 64位下Pycharm打包.py程序为可执行文件exe
Win10在开发环境下,我们可以直接通过IDE (Pycharm)直接运行,当我们完成一个程序时,我们需要在独立环境下执行,因此我们需要将.py程序打包成windows环境下可直接执行的exe文件。操作步骤如下:1.在Pycharm中安装插件PyInstaller搜索需要添加的PyInstaller模块,并安装该模块包,,等到安装成功会有提示出现最后,确定即可2.在工作代码区,鼠标右键调出terminal终端,输入命令pyinstaller -F -w SetDNS.py 点击回车,会看到原创 2020-08-07 11:32:01 · 2219 阅读 · 0 评论 -
一、详细Python3.8+PyQt5+pyqt5-tools+Pycharm配置
个人使用环境WIN10x64系统,Python3.8,PyCharm2020.01.03安装过程一、安装Python3.8(自己参考其他教程)二、安装PyQt5然后在cmd下输入指令pip install PyQt5也可以输入这个指令pip install PyQt5 -i https://pypi.douban.com/simple(后面是豆瓣的镜像地址,是为了加快下载速度)提示你更新pip,就按照提示更新(这步骤是可选的,看个人需求)在cmd下输入python -m p原创 2020-08-02 12:22:40 · 10916 阅读 · 2 评论