当前位置: 首页 PyQt5基类QObject属性和方法 QObject属性、值的设置和获取方法
add-vip

QObject属性、值的设置和获取方法

一、学习指导

python程序员一般都了解object这个基类,PyQt5也有自己的基类叫做QObject,几乎所有的其他子类和父类都最终继承自QObject,所以学习QObject

二、代码演示

from PyQt5.Qt import *
import sys
 
class Window(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("object对象")
        self.resize(600,500)
        self.func_list()
 
    def func_list(self):
        self.func()
        self.func1()
 
    def func(self):
        obj = QObject()
        obj.setObjectName('第一个Object对象')
        print(obj.objectName())
 
    def func1(self):
        obj1 = QObject()
        obj1.setProperty('level1', '第一')
        obj1.setProperty('level2', '第二')
        print(obj1.property('level1'))
        print(obj1.dynamicPropertyNames())
 
if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = Window()
    # print(window.windowTitle())
 
    window.show()
    sys.exit(app.exec_())

上面代码中第7行我们设置窗口标题,然后是尺寸,16行我们给对象设置了一个对象名称,大家注意这里的名称和上面的标题不是一样的,标题是窗口左上角显示的,这里的名称类似于QObject对象标示符,不是同一回事。到22行我们又给QObject对象设置了一个level属性并给一个对应的属性值。这个方法和上面的对象名称最常用的地方就是后面的QSS中,大家先记住QObject拥有这些功能,我们到后面详细讲解他的使用方法。

最后的dynamicPropertyNames()方法就是获取setProperty()所设置的属性名称。



相关文章