Russian Qt Forum
Ноябрь 23, 2024, 05:00 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: [РЕШЕНО] Как добавить custom sortIndicator в header делегат TableView?  (Прочитано 2793 раз)
Qyrychen
Гость
« : Февраль 08, 2016, 17:45 »

Доброго времени суток!
Столкнулся с очередной проблемкой! Есть модель и есть TableView. Удалось (хоть и не без труда Улыбающийся ) реализовать сортировку. Единственная проблема - у меня используется кастомный header делегат, а он, конечно же, не отображает индикатор сортировки (та стрелочка которая указывает по какому столбцу осуществляется сортировка и в какую сторону).
Есть чувство что нужно самому отслеживать столбец по которому сортируем и пририсовывать в его заголовке картинку со стрелочкой, но найти каких-либо вразумительных примеров в сети не удалось.

Подскажите, пожалуйста, кто чем может Улыбающийся
« Последнее редактирование: Февраль 09, 2016, 19:15 от Qyrychen » Записан
Qyrychen
Гость
« Ответ #1 : Февраль 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 для картинки
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.051 секунд. Запросов: 21.