속성을 이해하기 위해 다음과 같은 작은 스크립트를 작성했습니다. 내가 이해할 수없는 한 가지는, 내 클래스 A
의 metaObject()
에는 이제 conf_name
이라는 속성이 포함되어 있다는 것입니다. 어떻게 정보를 얻었습니까? 내 클래스에서는 속성을 설정하는 호출 대상 변수의 이름으로 한 번만 사용됩니다. 어떻게 실현 될 수 있습니까? 그것은 일반 Python, 즉 C API없이 구현할 수 있습니까? 이것은 개체 클래스의 속성으로되어 있지 않은 경우PyQt4의 pyqtProperty 이해
#!/usr/bin/python from PyQt4.QtCore import QObject, pyqtProperty from PyQt4.QtGui import QApplication class A(QObject): def __init__(self, parent = None): QObject.__init__(self) self._name = "" def getName(self): return self._name def setName(self, value): self._name = value conf_name = pyqtProperty("QString", getName, setName) a = QApplication([]) ai = A() for i in range(ai.metaObject().propertyCount()): print ai.metaObject().property(i).name()