python之pyqt专栏6-信号与槽2

         上一篇python之pyqt专栏5-信号与槽1-CSDN博客,我们通过信号与槽实现了点击Button,改变Label的文本内容。可以知道

        信号是在类中定义的,是类的属性

        槽函数是信号通过connect连接的任意成员函数,当信号发生时,执行与信号绑定的槽函数。

Qt Designer编辑信号与槽

        在上一篇的项目基础为UI界面添加一个新Label

        新对象列表如下

对象名 类型
label QLabel
label_2 QLabel
pushButton QPushButto

        UI界面如下

python之pyqt专栏6-信号与槽2_第1张图片

         1:点击编辑信号/槽

python之pyqt专栏6-信号与槽2_第2张图片

      2:鼠标点击Button,按住左键不释放,拖到label_2上,点击勾选 “显示从QWdiget继承的信号与槽”,点击自左侧pushButton的“clicked”信号,右侧槽函数点击hide(),点击确定。

python之pyqt专栏6-信号与槽2_第3张图片

        3: 可以看到UI界面上如下变化,在左下角信号与槽的编辑也多刚刚的信号与槽信息

python之pyqt专栏6-信号与槽2_第4张图片  

       :4:点击左上角的编辑窗口部件,退出信号与槽编辑。

python之pyqt专栏6-信号与槽2_第5张图片

        除了上面的编辑方式,还可以通过直接编辑右下角的信号/槽编辑器实现一样的功能。新增label3,并且在右下角的信号/槽编辑器点击“+”,如下图所示

python之pyqt专栏6-信号与槽2_第6张图片

        发送者:pushbutton

        信号:clicked

        接收者:lebel_3

        槽:hide

python之pyqt专栏6-信号与槽2_第7张图片

         点击左上角的编辑按钮,可以看到已经为pushbuttonclicked,连接了lebel_3hide

python之pyqt专栏6-信号与槽2_第8张图片

        经过Pyuic转换到的“py”文件多了下面两行代码

python之pyqt专栏6-信号与槽2_第9张图片

        当我们点击button时,label_2,label_3被隐藏掉

python之pyqt专栏6-信号与槽2_第10张图片

Qt 内置信号

         信号是在类中定义的,是类的属性,pyqt默认就存在的信号,我们称为内置信号。

        在Qt Designer进入编辑信号/槽,点击label_2不勾选“显示从QWdidget继承的信号和槽”

python之pyqt专栏6-信号与槽2_第11张图片

 勾选“显示从QWdidget继承的信号和槽”,可以看到信号增多

python之pyqt专栏6-信号与槽2_第12张图片

QAbstractButton 的信号

python之pyqt专栏6-信号与槽2_第13张图片

QWidget的信号

python之pyqt专栏6-信号与槽2_第14张图片

 QObject可以看到的信号python之pyqt专栏6-信号与槽2_第15张图片

    一个对象能够使用的内置信号,可以是类定义的信号,也可以是继承父类的信号。 

             

你可能感兴趣的:(PyQt,pyqt)