| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Значок направления сортировки в ListView |
| Автор: v258 13.2.2017, 17:57 |
| Делаю программу, в которой получаю список файлов в ListView. Сделал в числе прочего сортировку по столбцам в режиме vsReport. Все работает, но встал вопрос - как добавить в заголовок столбца иконку стрелочки, указывающей направление сортировки. ListView.Columns[0].ImageIndex не подходит, т.к. уже подключен imageList с системными иконками для отображения значков файлов. Добавить в него свои иконки не получится, т.к. его содержимое меняется динамически в процессе работы программы. Как быть? |
| Автор: v258 14.2.2017, 13:08 | ||
| Мда, Винград уже не тот... Для интересующихся рассказываю, как можно сделать - нужно подключить отдельный imagelist для заголовков
функция Header_SetImageList прописана в модуле CommCtrl Взято отсюда - http://vicking.narod.ru/articles/listview.htm |
| Автор: -Сергей- 12.4.2017, 20:34 |
| Удалите пожалуйста этот пост. |
| Автор: v258 12.4.2017, 20:46 |
| Почему? Решение вопроса не приветствуется? |
| Автор: ZBugz 13.4.2017, 07:15 | ||
Это он наверное запостил не туда, вот и просит удалить свой пост. А решение хорошее |
| Автор: -Сергей- 13.4.2017, 17:20 | ||
| Да, это я не туда запостил. Кстати, заголовок не так обычно находят. Для этого есть специальное сообщение LVM_GETHEADER. Можно воспользоваться функцией ListView_GetHeader, которая его и отсылает. Можно еще обойтись без Imagelist, устанавливать системный значок сортировки, но придется писать больше кода. Есть один нюанс, при изменении размера столбца иконка слетает. Чтобы этого не произошло надо отловить HDN_ENDTRACK который приходит с WM_NOTIFY, сабклассим ListView и перекрываем WMNotify. Возьмите на вооружение:
|