![]() |
|
|
![]()
|
|
| artsb |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: 39 Всего: 64 |
Всем привет!
Есть ListView со стилем vsReport. Сортировка по столбцу готова. Теперь бы как-нибудь отобразить, как отсортированы данные: по возрастанию или по убыванию. Никаких стандартных средств для решения этой проблемы не нашёл. Остаётся рисовать вручную, но нет события, которое возникает при отрисовке шапки столбца. Сделал так: использую свойство ImageIndex столбца и в нужный момент, меняю картинку. Но, стрелочка находится слева и пропала подсветка шапки при наведении мышью. Как можно нарисовать стрелочку в шапке? Это сообщение отредактировал(а) artsb - 11.6.2010, 09:50 -------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
|||
|
||||
| 586 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2243 Регистрация: 8.5.2006 Репутация: 57 Всего: 146 |
Для операционных систем Windows XP и старше:
Для того, чтобы стрелочка рисовалась, нужно включить визуальные стили Windows XP. |
|||
|
||||
| nick42 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 24 Регистрация: 18.5.2010 Репутация: нет Всего: нет |
Я пробовал переписывать заголовок с добавлением кода стрелки, что-то типа: <onColumnClick> char down[2] = { 0xAF, 0 }; AnsiString S = down; ListView1->Columns->Items[Column->Index]->Caption = "Столбец "+ S ; , но для стрелки FontName должен быть "Symbol" (код 0xAF), тогда текст искажается. Если сможете обойти это как-то форматированием строки... . |
|||
|
||||
| artsb |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: 39 Всего: 64 |
586, спасибо. То что нужно!
Вот только есть вопросы. Пишу так:
Проблемы: 1. После клика по заголовку, он остаётся подсвеченным даже если компонент теряет фокус. Можно ли как-то вручную убрать подсветку? 2. Почему-то не всегда работает очистка, т.е. сброс стрелочек. nick42, спасибо, но вариант 586 мне больше нравится ;) -------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
|||
|
||||
| 586 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2243 Регистрация: 8.5.2006 Репутация: 57 Всего: 146 |
У меня вроде нормально работает. Пример в аттаче. Пример в аттаче. Картинку можно тоже нарисовать, причём должно работать на версиях младше Windows XP и без тем. http://www.winapizone.net/tutorials/winapi...mnsortimage.php Добавлено через 4 минуты и 52 секунды На странице по ссылке, справа зелёный квадратик, там ссылки на скачивание рисунков-стрелочек - "Up Arrow" и "Down Arrow". Присоединённый файл ( Кол-во скачиваний: 49 )
ListView_SortHeader.zip 15,10 Kb |
|||
|
||||
| artsb |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: 39 Всего: 64 |
О! Вот так работает. Большое спасибо!
-------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |