Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » ListView

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

HighTower



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Народ, как нарисовать иконку (типа стрелочки сортировки) в заголовке ListView в правой части, ну или сразу за текстом?
Если прописать Column->ImageIndex = 1, то картинка рисуется слева, перед текстом...

Всего записей: 998 | Зарегистр. 09-08-2001 | Отправлено: 12:58 08-08-2002
Name



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
А чего бы тебе не поставить просто картинку, никак не привязанную к ListView, но находящуюся как раз на том месте?

Всего записей: 131 | Зарегистр. 28-03-2002 | Отправлено: 15:05 08-08-2002
HighTower



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну во-первых, картинка будет ниже контрола всегда,
во-вторых, по Canvas'у рисовать можно, но по заголовку на дают рисовать,
в-третьих, столбцы могут изменять ширину - нафига думать о положении картинки?

Всего записей: 998 | Зарегистр. 09-08-2001 | Отправлено: 15:12 08-08-2002
dneprcomp



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HighTower
Вообще, как говорят, вопрос конечно интересный...
Сам бы не отказался узнать, можно ли это сделать средствами контрола.  
А решение:
сделай картинку, включающую в себя техт(и поставь этот техт слева) .  
А потом меняй картинки(иконки). Техт для заголовка не используй вообще.

Всего записей: 3923 | Зарегистр. 31-03-2002 | Отправлено: 20:48 08-08-2002 | Исправлено: dneprcomp, 20:54 08-08-2002
Denchik



Двоечник
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HighTower
Билдер, я так понимаю?
погляди хелп по StretchDraw, и запихай его в OnCustomDrawItem
 
Добавлено
упс, протупил, тебе ж для заголовка надо, сорри.

Всего записей: 8889 | Зарегистр. 06-02-2002 | Отправлено: 21:11 08-08-2002
HighTower



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dneprcomp

Цитата:
Сам бы не отказался узнать, можно ли это сделать средствами контрола

Тут в другой конфе подсказали вот что:

Цитата:
 
Я делал наследника от CHeaderCtrl а потом сабклассил им тандартный:
типа так  
HWND stdHeaderCtrl = myListCtrl.GetHeaderCtrl()->GetSafeHwnd()
myHeaderCtrl.SubclassWindow(stdHeaderCtrl);
А уж в наследнике в DrawItem рисуешь что хочешь и как хочешь.  
 

Тока я не силён в этом...
 

Цитата:
сделай картинку, включающую в себя техт

А вот это попробую!!!

Всего записей: 998 | Зарегистр. 09-08-2001 | Отправлено: 10:00 09-08-2002
dneprcomp



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HighTower
Нет, это тоже не для меня. Мы, барин, больше по VB работники...

Всего записей: 3923 | Зарегистр. 31-03-2002 | Отправлено: 20:40 09-08-2002
HighTower



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dneprcomp
Да уже и не надо вообщем-то, т.к. реализовал твою идею с картинками (спасибо за неё) - всё прекрасно работает!!!

Всего записей: 998 | Зарегистр. 09-08-2001 | Отправлено: 09:47 10-08-2002
dneprcomp



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Рад помочь.  
Поздний вопрос: а собственно чем тебе техт справа не угодил?

Всего записей: 3923 | Зарегистр. 31-03-2002 | Отправлено: 22:20 12-08-2002
HighTower



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dneprcomp
Ну просто всегда стрелки сортировки справа... вот и не угодил
 
Ещё вопросик, как отследить изменение ширины колонки, что б картинку на ней перерисовывать?

Всего записей: 998 | Зарегистр. 09-08-2001 | Отправлено: 08:57 13-08-2002
dneprcomp



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HighTower
Ну, на вскидку, наверное можно использовать MouseUp
и проверять ColumnHeader.Width

Всего записей: 3923 | Зарегистр. 31-03-2002 | Отправлено: 23:46 13-08-2002
zAlAn711



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HighTower
 
Тема довольно простая - используй
 
флажок LVCFMT_BITMAP_ON_RIGHT при создании заголовка

Всего записей: 2960 | Зарегистр. 17-06-2002 | Отправлено: 16:56 06-09-2002
HighTower



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zAlAn711
 
Я в начале явно не сказал, что пишу на BCB, может под VC и легко флажёк поставить, но тут не знаю как... Я сделал просто картинки самопальные с рискунком справа + эффекты на текст заголовка....

Всего записей: 998 | Зарегистр. 09-08-2001 | Отправлено: 17:22 06-09-2002
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » ListView


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru