python GUI库图形界面开发之PyQt5信号与槽基本操作


Posted in Python onFebruary 25, 2020

信号与槽基本操作

进入Qt Designer,加入控件,本文以按钮为例。

按F4开始后,选择需要加入信号与槽的按钮,如下图所示该按钮会变红,按住鼠标拉出一条红线,若该按钮需控制旁边的label,则红线连接到label上(图1),若对框体(MainWindow)进行操作,则链接到框体上,会出现一个像物理中“地线”似的符号(图2)。

python GUI库图形界面开发之PyQt5信号与槽基本操作
图1

python GUI库图形界面开发之PyQt5信号与槽基本操作
图2

连接后,会弹出如下窗体(图3),左侧界面选择信号,如下图中选择“clicked()”代表点击按钮触发右侧对应槽的操作。

勾选下方的“show signals。。。。”后,右侧界面出现系统中已定义好的槽,如"clear()"代表清空,“close()”代表关闭。

若不勾选下方的“show signals。。。。”,则需自定义槽。(只有连接框体时(MainWindow)才可自定义槽)

python GUI库图形界面开发之PyQt5信号与槽基本操作图3

自定义槽

若不勾选下方的“show signals。。。。”,则跳出如下界面(图4),(右侧界面为我自定义槽,若没有自定义过,右侧应该为空。)点下右侧下方Edit,弹出图5。

python GUI库图形界面开发之PyQt5信号与槽基本操作图4

python GUI库图形界面开发之PyQt5信号与槽基本操作图5

点击加号,更改自定义槽的名字(图中trainBtn()为自定义槽),而后选择确定,界面回到图4,此时右侧界面会出现已经添加好的自定义槽。在图4中,选择好信号和槽后,点击确定,即可创建完成该按钮的信号与槽,即点击该按钮将进行的操作。

本文构建了一个简单界面,如下图6、图7所示:

隐藏与出现控制左侧“label”,槽分别为“hide()”,“show()”。

显示文字与清除文字控制左侧“textBrowser”,清除文字按钮的槽为“clear()”,显示文字为自定义槽。相关代码在后面添加自定义槽功能中详述。

python GUI库图形界面开发之PyQt5信号与槽基本操作图6

python GUI库图形界面开发之PyQt5信号与槽基本操作图7

添加自定义槽的功能:

保存Qt Designer文件。切换回pycharm界面,列表中的“.ui”文件即刚刚设计的界面(图8)。将“.ui”文件转换为“.py”文件后(参考文章开头的博客),在“.py”文件中添加自定义槽代码。(与ui文件相同名字的py文件)

python GUI库图形界面开发之PyQt5信号与槽基本操作
图8

找到编写按钮的代码,如下图9所示。按图中更改括号中内容为:self.自定义槽的名字。

python GUI库图形界面开发之PyQt5信号与槽基本操作图9

在该类的最后增加自定义函数,如下图10所示,实现功能为:在textBrowser控件中输出“hi,PyQt5”。

python GUI库图形界面开发之PyQt5信号与槽基本操作图10

在代码的最后,加入主函数,方可运行,代码如下图11所示:

python GUI库图形界面开发之PyQt5信号与槽基本操作图11

好了,本文主要介绍了python GUI库图形界面开发之PyQt5信号与槽基本操作如果错误欢迎指出,更多关于这方面的文章请查看下面的相关链接

Python 相关文章推荐
Python减少循环层次和缩进的技巧分析
Mar 15 Python
Python PyQt5实现的简易计算器功能示例
Aug 23 Python
浅谈Python由__dict__和dir()引发的一些思考
Oct 30 Python
使用Python制作简单的小程序IP查看器功能
Apr 16 Python
Python从函数参数类型引出元组实例分析
May 28 Python
Python assert语句的简单使用示例
Jul 28 Python
Python编写带选项的命令行程序方法
Aug 13 Python
django 自定义filter 判断if var in list的例子
Aug 20 Python
python从zip中删除指定后缀文件(推荐)
Dec 05 Python
Python 调用 ES、Solr、Phoenix的示例代码
Nov 23 Python
python模拟点击玩游戏的实例讲解
Nov 26 Python
Python深度学习之实现卷积神经网络
Jun 05 Python
python GUI库图形界面开发之PyQt5信号与槽机制、自定义信号基础介绍
Feb 25 #Python
python模拟点击网页按钮实现方法
Feb 25 #Python
python GUI库图形界面开发之PyQt5动态加载QSS样式文件
Feb 25 #Python
python 计算概率密度、累计分布、逆函数的例子
Feb 25 #Python
python GUI库图形界面开发之PyQt5窗口背景与不规则窗口实例
Feb 25 #Python
python统计函数库scipy.stats的用法解析
Feb 25 #Python
Python Websocket服务端通信的使用示例
Feb 25 #Python
You might like
咖啡机如何保养和日常清洁?
2021/03/03 冲泡冲煮
PHP之短标签开启设置
2013/06/17 PHP
php结合mysql与mysqli扩展处理事务的方法
2016/06/29 PHP
PHP快速排序算法实现的原理及代码详解
2019/04/03 PHP
Laravel多域名下字段验证的方法
2019/04/04 PHP
thinkphp框架类库扩展操作示例
2019/11/26 PHP
jQuery开发者都需要知道的5个小技巧
2010/01/08 Javascript
基于datagrid框架的查询
2013/04/08 Javascript
jquery数组过滤筛选方法grep()简介
2014/06/06 Javascript
JS实现简洁、全兼容的拖动层实例
2015/05/13 Javascript
jquery获取复选框checkbox的值实现方法
2016/05/30 Javascript
原生js仿jquery animate动画效果
2016/07/13 Javascript
使用vue.js2.0 + ElementUI开发后台管理系统详细教程(二)
2017/01/21 Javascript
vue实现图片加载完成前的loading组件方法
2018/02/05 Javascript
vue.js仿hover效果的实现方法示例
2019/01/28 Javascript
[00:32]10月24、25日 辉夜杯外卡赛附加赛开赛!
2015/10/23 DOTA
Python实现的插入排序算法原理与用法实例分析
2017/11/22 Python
Python获取CPU、内存使用率以及网络使用状态代码
2018/02/08 Python
python文本数据相似度的度量
2018/03/12 Python
pandas DataFrame数据转为list的方法
2018/04/11 Python
Python爬取个人微信朋友信息操作示例
2018/08/03 Python
python实现nao机器人身体躯干和腿部动作操作
2019/04/29 Python
Django实现网页分页功能
2019/10/31 Python
Python爬取YY评级分数并保存数据实现过程解析
2020/06/01 Python
Keras中 ImageDataGenerator函数的参数用法
2020/07/03 Python
Python发送邮件实现基础解析
2020/08/14 Python
Html5 postMessage实现跨域消息传递
2016/03/11 HTML / CSS
Tory Burch德国官网:美国时尚生活品牌
2018/01/03 全球购物
英国女性时尚鞋类的潮流制造者:Koi Footwear
2018/10/19 全球购物
英国在线潜水商店:Simply Scuba
2019/03/25 全球购物
社区先进事迹材料
2014/05/19 职场文书
赔偿协议书
2015/01/27 职场文书
幼儿园小班个人工作总结
2015/02/12 职场文书
2015年企业团支部工作总结
2015/05/21 职场文书
退休教师追悼词
2015/06/23 职场文书
Python使用pyecharts控件绘制图表
2022/06/05 Python