PyQt5 自定义信号pyqtSignal深度总结

一、pyqtSignal基本使用步骤

1.创建自定义信号对象
2.创建槽函数
3.将自定义信号对象与槽函数绑定
4.自定义信号对象发射信号

知识点总结: 自定信号是Object类的一个类属性。 自定义信号必须在PyQt5的QObject类及其子类 (QWidget/QMainWindow等)中使用,这些类包含“connect”属性,否则,在这些类外面使 用,会报错,提示:AttributeError:'PyQt5.QtCore.pyqtSignal' object has no attribute 'connect'

(一)控件外使用自定义信号

from PyQt5.QtCore import QObject, pyqtSignal

class MyObject(QObject):
    # 1.创建自定义信号对象
    mySignal = pyqtSignal()
    '''
        自定信号是Object类的一个类属性。 自定义信号必须在PyQt5的QObject类及其子类
    (QWidget/QMainWindow等)中使用,这些类包含“connect”属性,否则,在这些类外面使
    用,会报错,提示:AttributeError:'PyQt5.QtCore.pyqtSignal' object has 
    no attribute 'connect'
    '''
def mySlot(): # 2.创建槽函数
    print("控件外自定义信号")
myObject=MyObject()
# 3.将自定义信号对象与槽函数绑定
myObject.mySignal.connect(mySlot)
# 4.自定义信号对象发射信号
myObject.mySignal.emit()

(二)控件外使用自定义信号

知识点总结: 自定信号是Object类的一个类属性。 自定义信号必须在PyQt5的QObject类及其子类 (QWidget/QMainWindow等)中使用,这些类包含“connect”属性,否则,在这些类外面使 用,会报错,提示:AttributeError:'PyQt5.QtCore.pyqtSignal' object has no attribute 'connect'

from PyQt5.QtCore import QObject, pyqtSignal
from PyQt5.QtWidgets import QWidget,QApplication
import sys

class mywin(QWidget):
    # 1.创建自定义信号对象
    mySignal=pyqtSignal()
    '''
        自定信号是Object类的一个类属性。 自定义信号必须在PyQt5中QWidget类及其子类中使
    用,这些类包含“connect”属

你可能感兴趣的:(PyQt5,qt,python)