- @QmlUncreatable¶
声明被修饰的类型不应从QML创建。如果该类型通过前面的
@QmlElement修饰符在QML中可用,则此声明生效。如果检测到尝试从QML创建该类型,将发出错误消息。一些QML类型是隐式不可创建的,特别是使用
@QmlAnonymous暴露的类型。传递 None 或不传递参数将导致使用标准消息。
QML_IMPORT_NAME = "com.library.name" QML_IMPORT_MAJOR_VERSION = 1 QML_IMPORT_MINOR_VERSION = 0 # Optional @QmlElement @QmlUncreatable("BaseClassForQml is an abstract base class") class BaseClassForQml(QObject): ...
注意
装饰器的顺序很重要;
QmlUncreatable需要在QmlElement之前。