我有如下Q_ENUM声明:MyClass
class MyClass {
public:
enum Enum_Test {
eTestA,
eTestB
}
Q_ENUM(Enum_Test)
Q_OBJECT
Q_PROPERTY(MyClass::Enum_Test enumTest READ GetEnumTest WRITE SetEnumTest )
}
Run Code Online (Sandbox Code Playgroud)
我已经MyClass在 QML 端注册,如下所示,并且能够访问它。
auto my_class = std::make_shared<MyClass>();
qmlRegisterUncreatableType<MyClass>("MyClass", 1,0, "MyClass","Cannot create type MyClass in QML");
rootContext()->setContextProperty("my_class", my_class.get());
Run Code Online (Sandbox Code Playgroud)
如何从 QML 访问Q_ENUM Enum_Test?