我有一个QML文件
QMLFile1.qml
Rectangle{
id: LogicFile
property int characters
property bool checked
}
Run Code Online (Sandbox Code Playgroud)
在第二个QML文件QMLFile2.qml中
如果我尝试像这样在第二个文件中实例化第一个文件
Rectangle{
QMLFile1{
// unable to access the
//properties here id: LogicFile
// property int characters
//property bool checked
}
}
Run Code Online (Sandbox Code Playgroud)
为什么我无法在第二个内部访问第一个QMLFile的属性。
但是,如果我直接在第二个文件中实例化firstQML文件,即不在任何元素(如矩形,项目等)内,则所有属性都可访问,为什么会这样?
为此,您可以访问第二个文件中的属性:
例:
QMLFile1.qml
Rectangle{
id: LogicFile
property alias rectId:LogicFile // exposing id to outside files
property int characters
property bool checked
}
Run Code Online (Sandbox Code Playgroud)
QMLFile2.qml
Rectangle{
QMLFile1{
id:rectId
//Now you can access them like rectId.characters/rectId.checked
rectId.characters = 10
}
}
Run Code Online (Sandbox Code Playgroud)