2011-10-20 2 views
3

파이썬 만 사용하여 QML 확장을 작성하고 싶습니다. C++에서이 작업을 수행하는 방법을 알고 있지만 Python에서는 그렇지 않습니다. 이것은 가능한가? 여기 내가 찾는 것에 대한 모호한 생각이 있습니다. PyQt4를 사용하여 QML 확장

class NewToQML(QObject): 
    Q_PROPERTY(int root READ num WRITE setNum NOTIFY numChanged REVISION 1) 

그리고 test.qml에서

:

import MyQmlAdditions 1.0 
NewToQML { 
    num: 7; 
} 

[편집] 나는 마우스가 그래픽 객체 위에있을 때 커서를 변경 예를 들어 달성하기 위해이 QML 추가를 사용하고자하는 (NewToQML) .

+0

아래에서 언급했듯이 PySide에서는이 작업을 수행 할 수 없지만 커서를 변경하려면 Python에 신호를 보내거나 PyQt를 사용하여 커서를 변경하는 PySlot이있는 컨텍스트 개체를 표시하여 커서 변경을 수행 할 수 있습니다. – Patrick

답변

1

나는 대답을 찾았습니다. on nabble은 Phil Thompson-5가 Giovanni Bajo가 추종하는 좋은 설명/추론으로 대답했습니다.

짧은 대답 : PyQt는 4.7 및 이전 버전에서 qmlRegisterType을 지원하지 않습니다.

그러나 PySide는 here과 같이이 기능을 가지고 있습니다.

0

PyQt로 예제와 데모를 설치했다면, Minehunt 데모는 QML 예제를 제공합니다. 설치되어 있지 않은 경우 PyQt4 source을 다운로드하고 examples/demos/declarative/minehunt을 확인하십시오.

+0

이 방법은 QML에 데이터 개체를 노출하는 데 사용되지만 QML에 그래픽 개체를 노출 할 수 있는지 잘 모르겠습니다. 그 부분을 명확하게하기 위해 내 질문을 편집했습니다. – Patrick

관련 문제