Qt for Python UsingQtProperties/ko

From Qt Wiki
Jump to navigation Jump to search



한국어 English

PySide에서 Qt 속성 사용하기

PySide의

Property

함수는 Qt 및 파이썬의 속성을 한번에 정의할 수 있으며, 속성 값을 읽고 쓰는 파이썬 함수를 정의할 수 있습니다.

아래 예제는 파이썬에서 Qt 속성을 정의하고 접근하는 방법을 보여 줍니다.

<br />class MyObject(QObject):<br /> def ''init''(self,startval=42):<br /> self.ppval = startval

def readPP(self):<br /> return self.ppval

def setPP(self,val):<br /> self.ppval = val

pp = Property(int, readPP, setPP)

obj = MyObject()<br />obj.pp = 47<br />print obj.pp<br />

PySide의 속성에 대한 자세한 내용은 "PSEP 103":http://www.pyside.org/docs/pseps/psep-0103.html 을 참고하십시오.

QML 속성

QML 문서에서 선언한 객체의 속성을 사용하려면 정의한 QML 속성이 NOTIFY가 가능해야 합니다. 간단한 시그널을 선언하면 됩니다.

<br />class Person(QtCore.QObject):<br /> def ''init''(self, name):<br /> QtCore.QObject.''init''(self)<br /> self._person_name = name

def _name(self):<br /> return self._person_name

&amp;#64;QtCore.Signal<br /> def name_changed(self): pass

name = QtCore.Property(unicode, _name, notify=name_changed)<br />