【背景】
打算用pyqt4实现界面化,但以前没用过python实现,玩过很老的Java swing,那么不是为了系统的学习,只是把东西做出来,如何快速上手呢?这里说下我的经验
【步骤】
首先,了解下前期的环境安装、准备,见前一篇文章(pyqt4实现图形小工具);
其次,了解pyqt核心机制:界面的控件都可以使用pydesigner画出来,所以核心是如何写交互逻辑、控件响应事件——信号和槽机制。
先看一个信号和槽的实例:
self.pushButton_2.clicked.connect(self.loadFile)
//将控件pushButton_2的点击事件与逻辑函数self.loadFile关联
如此,当按钮2被被点击时,其发出一个信号,槽函数就是self.loadFile,接受这个信号,并开始被调用;
理解信号和槽机制(作用于两个object之间的通信):
当一个对象发生一个特定事件时,一个信号被发射,槽就是一个对应于特定信号的被调用的函数。
Qt的部件有很多预定义的信号,但我们可以通过继承来加入自己的信号。Qt的部件有很多预定义的槽,但同样可以加入自己的槽来处理感兴趣的信号。
信号和槽机制将两个不同的object绑定起来,但是两个object之间不需要互相了解,实现了信息封装。
一个信号可以连接多个槽,多个信号可以连接一个槽,一个信号可以连接另一个信号。(该情况下,只要第一个信 号被发射时,第二个信号立即被发射。)
理解详细原理(转载):https://blog.csdn.net/qq_33924155/article/details/72811739