如何将 qml-properties 重置为其默认值?
How do I reset qml-properties to their default value?
我有一个 TextField
,我想在其中有条件地显示或隐藏背景。这是一个带有背景的文本字段:
TextField {
id: with_background
}
还有一个没有:
TextField {
id: without_background
background: null
}
我试过有条件地将背景设置为 undefined
,但没有成功:
TextField {
background: row.activeFocus ? TextField.background : null;
}
这在 QML 中甚至可能吗?
TextField
取得背景的所有权。当您将背景设置为 null
时,旧背景将被破坏以避免背景 "piling up"。因此,您不能来回切换背景。但是,如果您只需要切换它的可见性,您可以这样做:
TextField {
background.visible: row.activeFocus
}
我有一个 TextField
,我想在其中有条件地显示或隐藏背景。这是一个带有背景的文本字段:
TextField {
id: with_background
}
还有一个没有:
TextField {
id: without_background
background: null
}
我试过有条件地将背景设置为 undefined
,但没有成功:
TextField {
background: row.activeFocus ? TextField.background : null;
}
这在 QML 中甚至可能吗?
TextField
取得背景的所有权。当您将背景设置为 null
时,旧背景将被破坏以避免背景 "piling up"。因此,您不能来回切换背景。但是,如果您只需要切换它的可见性,您可以这样做:
TextField {
background.visible: row.activeFocus
}