标签: qenum

如何从 QML 访问 C++ 类中声明的 Q_ENUM?

我有如下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

qt qml qt-quick qenum

5
推荐指数
2
解决办法
4590
查看次数

标签 统计

qenum ×1

qml ×1

qt ×1

qt-quick ×1