- @QmlExtended#
声明封装类型使用作为扩展传递的类型提供更多属性、方法和枚举。如果该类型通过 QmlElement()
或 QmlNamedElement()
装饰器暴露给 QML,则此声明生效。
QML_IMPORT_NAME = "com.library.name"
QML_IMPORT_MAJOR_VERSION = 1
QML_IMPORT_MINOR_VERSION = 0 # Optional
class LineEditExtension(QObject):
pass
@QmlNamedElement("QLineEdit")
@QmlExtended(LineEditExtension)
@QmlForeign(QLineEdit)
class LineEditForeign(QObject):
...
之后该类可以在 QML 中使用
import com.library.name 1.0
QLineEdit {
left_margin: 10
}