当前位置: 代码迷 >> 综合 >> Qml状态(State)改变支持的类型
  详细解决方案

Qml状态(State)改变支持的类型

热度:76   发布时间:2023-12-12 18:10:57.0

Qml控件的状态(State)可以设置变化属性,是一个list类型:changes[]。

支持多种类型的Change对象。

PropertyChanges类型

用来改变对象的属性,详细介绍见上一篇文章:Qml的状态。

ParentChange

用来改变对象控件的parent。包含以下属性:

  • target:目标对象
  • parent:指定目标对象的parent
  • x,y:设置目标对象的x和y的位置
  • width/height:设置目标对象的宽高
  • rotation/scale:设置选装角度和比例

ParentChange只可以设置这几个属性,但可以结合PropertyChanges来设置对象的属性。

AnchorChange

用来设置空间的锚布局属性,支持常规的顶部,底部,左侧和右侧等设置。

AnchorChange只能设置这几个属性,但可以结合PropertyChanges来设置对象的属性。

这里简要总结一下,PropertyChanges完全可以实现ParentChange和AmchorChange的功能,但使用后两者对于同样的功能效率更高。

StateChangeScript

通过js脚本来使组件发生变化,其设置的属性如下:

  • name:脚本的名称(可以实现复用)
  • script:执行的脚本

 

  相关解决方案