from PyQt5.Qt import *
import sys
class Window(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle('QObject父子对象学习')
self.resize(500, 500)
self.func_list()
def func_list(self):
self.func1()
def func1(self):
objA = QObject()
objA.setObjectName('A对象')
objB = QObject()
objB.setObjectName('B对象')
objC = QObject()
objC.setObjectName('C对象')
# B--->A
objB.setParent(objA)
# C--->B
objC.setParent(objB)
# objC.children(objA) # 设置子类
print('B---->',objB.parent().objectName())
print('C---->',objC.parent().objectName())
print(objA.findChild(QObject))# A的【直接】QObject类型的子类是
print(objA.findChildren(QObject))# A的【所有】QObject类型的子类是
if __name__ == '__main__':
app = QApplication(sys.argv)
window = Window()
window.show()
sys.exit(app.exec_())