PyQt5-QObject基础方法
QObject对象名称设置和属性
obj.setObjectName(arg) #设置唯一的名称
obj.objectName() #获取名称
obj.setProperty(key,value) #给对象添加属性和值
obj.property(key) #获取对象中对应key的值
obj.dynamicPropertyName() #获取所有设置属性的对象和属性名称
from PyQt5.Qt import * obj = QObject() obj.setObjectName('name') # 设置一个唯一名称 print(obj.objectName()) obj.setProperty('level1','第一') # 给对象添加一个属性和值 obj.setProperty('level2','第二') print(obj.property('level2')) print(obj.dynamicPropertyNames()) # 获取所有setProperty()设置属性的对象和属性名称
QObject-对象父类、子类设置和查找
obj.setParent(obj) #设置父对象
obj.parent() #获取父对象
obj.children() #获取子对象
obj.findChild(QObject) #获取直接子QObject对象,参数类型可变
obj.findChildren(QObject) #获取所有的子QObject对象,参数类型可变
from PyQt5.Qt import * obj1 =QObject() obj2 =QObject() obj3 =QObject() obj1.setParent(obj2) # 设置父对象 obj3.setParent(obj1) # print(obj1.parent()) # 获取父对象 print(obj2.children()) print(obj2.findChild(QObject)) # 获取直接的子对象 print(obj2.findChildren(QObject)) # 获取所有的子对象
QObject-对象删除
ogj.deleteLater() # 在代码执行完之后删除对象
QObject定时器
from PyQt5.Qt import * import sys class Obj(QObject): def timerEvent(self, QTimerEvent): print(QTimerEvent,2) if __name__ == '__main__': app = QApplication(sys.argv) window = QWidget() obj =Obj() timer_id = obj.startTimer(1000) # obj.killTimer(timer_id) window.show() sys.exit(app.exec_())