当 QML 对象不可见时阻止 QML 属性 绑定?
Prevent QML Property Bindings when QML object isn't visible?
我正在开发一个具有大量 属性 绑定的 QML 应用程序:数百个对象被跟踪并以不同的形式显示,例如 Qt3D/QCanvas。
当我在应用程序的单独页面上时,属性 对 x/y 位置和相对大小的绑定仍在发生。我怎样才能阻止他们?我知道我可以根据它们是否可视化来绑定属性,但这是很多不必要的代码:
x:可见? tracking.location(索引).x : 0
我将不得不包装大量这样的绑定。还有其他解决方案吗?
您可以使用 Binding
元素。您可以指定目标、属性、值和条件来激活绑定。
Binding on x {
value: tracking.location(index).x
when: visible
}
您也可以使用 Loader{} 并将 active 属性 设置为 false。这将禁用整个项目。
我正在开发一个具有大量 属性 绑定的 QML 应用程序:数百个对象被跟踪并以不同的形式显示,例如 Qt3D/QCanvas。
当我在应用程序的单独页面上时,属性 对 x/y 位置和相对大小的绑定仍在发生。我怎样才能阻止他们?我知道我可以根据它们是否可视化来绑定属性,但这是很多不必要的代码:
x:可见? tracking.location(索引).x : 0
我将不得不包装大量这样的绑定。还有其他解决方案吗?
您可以使用 Binding
元素。您可以指定目标、属性、值和条件来激活绑定。
Binding on x {
value: tracking.location(index).x
when: visible
}
您也可以使用 Loader{} 并将 active 属性 设置为 false。这将禁用整个项目。