Я пытаюсь реализовать способ поставить ListView
перед родными братьями и сестрами (в случае ниже: пытаюсь заставить list
показывать выше field
элементов).При вводе «show» на любом элементе, кроме последнего, я бы хотел видеть list
выше всех остальных.Я знаю, как работает визуальный родительский / дочерний стек QML, я просто хочу как-то обойти это.Я попытался изменить значение z
, но это не сработало бы, поскольку отношение родитель / потомок имеет приоритет над слоями.Вот что я пытаюсь сделать.
import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Controls 2.5
Window {
width: 400
height: 400
visible: true
ListView {
anchors.fill: parent
anchors.margins: 20
model: ListModel {
ListElement {
text: "1"
}
ListElement {
text: "2"
}
ListElement {
text: "3"
}
ListElement {
text: "4"
}
ListElement {
text: "5"
}
ListElement {
text: "6"
}
}
delegate: Item {
width: parent.width
height: 40
TextField {
id: field
anchors.fill: parent
anchors.margins: 1
text: model.modelData
}
z:2
ListView {
id: list
anchors.top: field.bottom
width: parent.width
height: 200
visible: field.text === "show"
clip: true
delegate: Text {
width: parent.width
height: 20
text: model.modelData
}
z:3
model: ListModel {
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
ListElement {
text: "11"
}
}
}
}
}
}
z
значения, которые следует игнорировать, поскольку они не работают.