Russian Qt Forum

Qt => Qt Quick => Тема начата: Pingvin от Апрель 18, 2014, 22:15



Название: Состояние по умолчанию qml
Отправлено: Pingvin от Апрель 18, 2014, 22:15
Добрый вечер .
Такой вот вопрос :
Вот  допустим есть GridView , в нем объект Rectangle  c color: "black" .Всего таких 5,то есть model: 5  ;
При нажатии  на  первую панель ,изменяем цвет на красный ,а после этого при нажатии на другую ,мне нужно ,что бы предыдущая  панель стала обратно черной,а новая(на которую нажали) красной )
Вот как это сделать?
Заранее спасибо:)


Название: Re: Состояние по умолчанию qml
Отправлено: kibsoft от Апрель 18, 2014, 23:55
Примерно так. Там для GridView еще вроде cellWidth и cellHeight надо задавать.
Код:
GridView {
id: gridView
model: 5
delegate: Rectangle {
   width: 100
   height: 100
   color: index == gridView.currentIndex ? "red" : "black"
   MouseArea {
       anchors.fill: parent
       onClicked: gridView.currentIndex = index
   }
}
}


Название: Re: Состояние по умолчанию qml
Отправлено: Pingvin от Апрель 19, 2014, 17:36
Спасибо)