| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> PyQt:关于信号与槽的简单小实例(上) -> 正文阅读 |
|
[Python知识库]PyQt:关于信号与槽的简单小实例(上) |
实例1:设计一个程序, 点击"退出"按钮后退出程序 1. 在PyCharm中右键project --> External Tools --> QtDesigner 2.在左侧的 Widget Box 中找到 Push Button ,拖进界面中,双击PushButton,将文本值改为'关闭' 3.点击左上角工具栏中的"编辑信号/槽",此时可以看到Widget Box 变为灰色;鼠标点击Button拖动至空白处松开,此时会弹出配置链接框。 4. 在pushButton中选择clicked()信号,勾选左下角的从QWidget继承的信号和槽,在右边MainWindow中选择close()作为槽函数,点击OK。 ?5. 将文件保存为.ui文件,这里保存为SigAndSlot.ui。(此时左边的Widget Box依旧是灰色的不可选状态,左上角工具栏的"编辑信号/槽"左边有个"编辑窗口部件",点击一下就恢复啦~) 也可以通过右下角的信号/槽编辑器进行设置 6. 返回PyCharm界面,可以看到项目下生成了SigAndSlot.ui文件,右键点击该文件,选择External Tools?,选择PyUIC,生成对应的python文件: SigAndSlot.py ? ?文件中定义了类Ui_MainWindow,以代码方式绘制出了界面,主要看以下几行:
7. 现在新建一个python文件开始编写代码(由于 SigAndSlot.py 每次都会随着ui文件改动而刷新,所以不建议在其中加入我们的代码修改,因为只要ui文件有改动一转换我们的修改就会被覆盖了。最好的方式是另起一个python文件,在其中继承这个类,并进行代码修改,这也符合界面设计与逻辑分开的思想。) ?8. 编写一个类继承Ui_MainWindow以及程序入口
?9. 运行程序,看看结果:点击关闭按钮,窗口消失~ 最简单的信号槽小程序就完成啦,还可以自己尝试拓展一下: ?实例2:设计一个程序,点击按钮,弹出消息提示框 ?假设我们希望在收到信号的时候打印出提示信息,或者做其它的动作,那么上面的内置槽函数显然不能满足。这时候,就需要我们自定义槽函数来满足需求。 ?1. 首先还是在Qt Designer中,拖动Push Button 到界面上,修改为text值为"测试",先添加一个信号和槽(这里只是为了方便演示在代码中的位置),保存文件。 ? ?2. 返回到PyCharm中,右键SigAndSlot.ui --> External Tools -->PyUIC 更新对应的py文件。(如果忘记这一步一会运行还是显示之前的界面喔) 3. 在SigAndSlot.py中找到信号槽的相关代码,由于我们要自定义槽函数,这里将该行注释掉。
4. 新建一个python文件,加入以下代码:
5. 运行程序: ?今天的教程到此结束了,欢迎评论区讨论~丿^ ^丿 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 | -2024/12/27 0:17:41- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
数据统计 |