Выделенный элемент ListView не отображается

Я пытаюсь выделить текущий выбранный элемент в ListView. Ниже приведен код, который я использую; почему-то, в то время как в другом ListView этого приложения аналогичный код работает отлично, здесь элемент SelectedRectangle никогда не отображается, хотя выбранный элемент меняется, когда должен.

Rectangle {
    id: deviceTree
    width: (window.width * 2) / 3
    height: 400

    border {
        width: 2
        color: "black"
    }

    ListView {
        id: deviceTreeView

        model: deviceTreeModel
        delegate: deviceTreeDelegate
        highlight: SelectionRectangle {}

        anchors.fill: parent
        anchors.margins: 6
    }

    Component {
        id: deviceTreeDelegate

        Rectangle {
            border.color: "#CCCCCC"
            width: deviceTree.width
            height: 30

            smooth: true
            radius: 2

            MouseArea {
                anchors.fill: parent
                onClicked: { deviceTreeView.currentIndex = index; window.selectedDeviceChanged(deviceName) }
            }
        }
    }
}

SelectedRectangle.qml

Rectangle
{
    id: selectionRectangle

    color: "lightsteelblue"
    smooth: true
    radius: 5
}

РЕШЕНИЕ :Прямоугольник в deviceTreeDelegate по умолчанию был белым и перекрывал прямоугольник выбора. Используя свойство, оно установлено как прозрачное, чтобы можно было увидеть выделение.

5
задан Lisa Vitolo 4 July 2012 в 15:48
поделиться