Есть вот такой код. Некий прообраз выпадающего меню. Попробуйте в qmlviewer его запустить - нажимаете в поле - открывается список - выбираем что-нибудь - список закрывается, но текущая надпись остается видимой))) Что не так?))
import QtQuick 1.1
Item {
width: 400
height: 500
transformOrigin: Item.TopRight
scale: 1
Rectangle {
id: drop
property bool open: false
x: 112
y: 51
width: 200
height: open ? list_view.count*18+2 : 20
border.color: "black"
smooth: true
radius: 3
ListView {
id: list_view
x: 1
y: -1
// width: parent.width
anchors.fill: parent
anchors.margins: 1
interactive: false
delegate:
Component {
id: listDelegate
Item {
property int mailId: mailId
id: delegateItem
width: parent.width; height: 18
// clip: true
Rectangle { id: back; anchors.fill: parent; color: "#ffffff"; }
Rectangle { id: rectangle1; anchors.top: parent.top; anchors.topMargin: -0.5; height: 1; color: "#E6E6E6"; opacity: 1; width: parent.width; }
Text {
text: name
font.pixelSize: 14
font.bold: true
color : "#1A1A1A"
width: parent.width
anchors.left: parent.left
anchors.leftMargin: 24
elide: "ElideRight"
}
MouseArea {
anchors.fill: parent
hoverEnabled: true
onEntered: back.color = "yellow"
onExited: back.color = "#ffffff"
onClicked: {mmodel.move(index, 0, 1); drop.open = !drop.open; console.log(drop.height, list_view.height)}
}
}
}
model: ListModel {
id: mmodel
ListElement {
name: "Grey"
}
ListElement {
name: "Red"
}
ListElement {
name: "Blue"
}
ListElement {
name: "Green"
}
}
}
}
}