1

我有一个TextField我想有条件地显示或隐藏背景的地方。这是一个带有背景的文本字段:

TextField {
    id: with_background
}

这是一个没有:

TextField {
    id: without_background
    background: null
}

我尝试有条件地将背景设置为undefined,但这不起作用:

TextField {
    background: row.activeFocus ? TextField.background : null;
}

这在 QML 中是否可行?

4

1 回答 1

3

TextField拥有背景的所有权。当您将背景设置为 时null,旧背景将被销毁以避免背景“堆积”。因此,您不能来回切换背景。但是,如果您只需要切换其可见性,您可以执行以下操作:

TextField {
    background.visible: row.activeFocus
}
于 2017-01-27T07:26:14.483 回答