gpt4 book ai didi

qt - 在 QML 中重新设置视觉项的更好方法

转载 作者:行者123 更新时间:2023-12-04 13:00:46 24 4
gpt4 key购买 nike

似乎在 QML 的设计中用户 reparent 并没有真正“设想”,因为即使有可能,它也涉及创建和更改状态,这只是不方便添加到每个项目。

 import QtQuick 1.0

Item {
width: 200; height: 100

Rectangle {
id: redRect
width: 100; height: 100
color: "red"
}

Rectangle {
id: blueRect
x: redRect.width
width: 50; height: 50
color: "blue"

states: State {
name: "reparented"
ParentChange { target: blueRect; parent: redRect; x: 10; y: 10 }
}

MouseArea { anchors.fill: parent; onClicked: blueRect.state = "reparented" }
}
}

我想知道是否有一种更优雅的方式来重新设置项目而不用不必要的状态污染项目?

最佳答案

不确定是否需要使用 QtQuick 1.0,但使用 2.0 这也可以,而且更直接。

导入 QtQuick 2.0

元素 {
宽度:200;高度:100
Rectangle {
id: redRect
width: 100; height: 100
color: "red"
}

Rectangle {
id: blueRect
x: redRect.width
width: 50; height: 50
color: "blue"

MouseArea { anchors.fill: parent; onClicked:
{ blueRect.parent = redRect; blueRect.x = 10; blueRect.y = 10 }
}
}
}

关于qt - 在 QML 中重新设置视觉项的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24109184/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com