我正在尝试绑定两个拨号元素,这样如果更改了dial1值,则相同的值将反映在另一个qml中的dial2中。
QML对我来说是新的,我不太了解这方面的内容。但是我想在这上面使用纯QML,而不是C,C ++。
true
其次,我希望对同一场景进行双向绑定。
答案 0 :(得分:0)
在某个地方,您将实例化这两个文件。我们假设它是TabView
。您可以通过向将保存共享值的TabView
添加属性来在两个文件之间建立连接。
拥有sharedValue
的专家是,实例化两个文件的时间可能不同,因此如果您销毁file1
的实例并创建file2
的实例,那么几分钟之后,你仍然可以获得价值。
TabView {
property int sharedValue
File1 {
id: file1
}
File2 {
id: file2
}
}
然后阅读this on bidirectional bindings并将拨号的两个公开值绑定到共享值。您也可以省略属性sharedValue
并直接在两个公开值之间安装双向绑定。
当然,有必要公开表盘的价值,所以你的文件需要看
Tab {
property alias dialValue: dial.value // now you can access the dial's value via this new property.
CustomDial {
id: dial
}
}
只要你不改变绑定中的值,我建议使用两个Binding
- Object来安装双向绑定。