Russian Qt Forum

Qt => Qt Quick => Тема начата: Qyrychen от Февраль 08, 2016, 17:45



Название: [РЕШЕНО] Как добавить custom sortIndicator в header делегат TableView?
Отправлено: Qyrychen от Февраль 08, 2016, 17:45
Доброго времени суток!
Столкнулся с очередной проблемкой! Есть модель и есть TableView. Удалось (хоть и не без труда :) ) реализовать сортировку. Единственная проблема - у меня используется кастомный header делегат, а он, конечно же, не отображает индикатор сортировки (та стрелочка которая указывает по какому столбцу осуществляется сортировка и в какую сторону).
Есть чувство что нужно самому отслеживать столбец по которому сортируем и пририсовывать в его заголовке картинку со стрелочкой, но найти каких-либо вразумительных примеров в сети не удалось.

Подскажите, пожалуйста, кто чем может :)


Название: Re: Как добавить custom sortIndicator в header делегат TableView?
Отправлено: Qyrychen от Февраль 09, 2016, 19:13
Жаль что приходится отвечать самому, но может кому будет полезно.
Оказалось все очень просто. Данный компонент устанавливается как headerDelegate:
Код:
Component{
        id: header
        Rectangle{
            id: tableHeader
            ...
            Text{
                ...
                text: styleData.value
            }
            Image{
                 id: sortIndicatorImage
                 anchors.verticalCenter: parent.verticalCenter
                 anchors.right: parent.right
                 anchors.rightMargin: 10
                 source: styleData.column === tableView.sortIndicatorColumn
                         ? ( tableView.sortIndicatorOrder == 0 ? "sort_indicator_down.png" : "sort_indicator_up.png" )
                         : ""
            }
        }
    }

Вся суть в установке свойства source для картинки