에 Qt의 Q_ENUMS을 노출하지만, QT를 워드 프로세서 (http://doc.qt.nokia.com/4.7-snapshot/qtbinding.html#using-enumerations-of-a-custom-type)내가 분명 여기서 뭔가를 누락 될 수 있습니다 QML
같이 작동하지 않는 것 그때 &이 QDeclartiveContext에이 클래스의 인스턴스를 주입 등록class MyClass : public QDeclarativeItem {
Q_OBJECT
Q_ENUMS(testType)
public:
MyClass() : t(FirstValue) { }
enum testType { InvalidValue, FirstValue, SecondValue } ;
testType testVal() const { return t; }
Q_PROPERTY(testType testVal READ testVal NOTIFY testValChanged)
private:
testType t;
signals:
void testValChanged();
};
: 같은
나는 간단한 테스트 케이스를 만들었습니다, 내 C는 ++ 클래스 보인다.
testVal 속성에 액세스하려고하면 문자열 표현이 아닌 정수 (이 경우 1)가 반환됩니다. 또한 , I 시도하고, 그 결과가
그래서이 I 같이 테스트를 수행 할 수 없음을 의미 '미정의'는 액세스 'aVar.FirstValue'하면 'AVAR'로 주입 인스턴스 다음 용 'if aVar.testVal == FirstValue'
(ReferenceError가 비정규 FirstValue)
또는 같은
:'if aVar.testVal == aVar.FirstValue'
(
aVar.FirstValue
가 정의되어 있지 않습니다)
사람은 전에이 겪었? 이 예제에서는 QML에서 인스턴스가 생성되었지만 QT 문서에서 제공된 예제와 충돌하는 것 같습니다. 따라서이 문제가 원인 일 수 있습니다.
아, 잡았다, 고마워. – aidanok