Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Собственная отрисовка иконок в TreeView и ListView [D7, WinXP]


Заикин Сергей ©   (2009-04-13 14:26:00) 

Можно ли сделать собственную отрисовку иконок в TreeView и ListView таким образом, чтобы остальные действия (например, выделение элементов, отрисовка значка + и линий в TreeView) производила сама система? Или придется все события прописывать самому?
Как сделать так, чтоб при выделении элемента в ListView на иконку не накладывалась синяя маска?


DVM   (2009-04-14 19:02:00) [1]


> Заикин Сергей   (13.04.09 14:26)  

Может взять VirtualTreeView. Там есть все что угодно, в том числе и PNG. И он не на основе ListView. Он полностью с нуля написан на Delphi. На "...TreeView" в названии можно не обращать внимания - этот компонент и TreeView и ListView и еще несколько вещей в одном флаконе. Очень гибкий и быстрый.


Заикин Сергей   (2009-04-14 09:04:00) [2]

Указанные вами компоненты, во-первых, платны, а, во-вторых, не поддаются скинированию...


Игорь Шевченко   (2009-04-13 17:30:00) [3]


> Второй - система некорректно отрисовывает png на ListView
> и TreeView


так это наверное ограничения стандартного ImageList ? Где-то уже была про это информация, вот Developer Express, например, для него замену сделал.


Заикин Сергей   (2009-04-13 17:29:00) [4]

Второй - система некорректно отрисовывает png на ListView и TreeView (это хорошо заметно, если запустить пример, расположенный по выше приведенной ссылке). А первый - смогу сказать только вечером (мне от него пришлось отказаться, осталось вспомнить почему).


Игорь Шевченко   (2009-04-13 17:09:00) [5]


> Этот вариант не проходит


Какой из двух предложенных ?


> см. http://www.alphaskins.com/forum/index.php?showtopic=4178


И че ?


Заикин Сергей   (2009-04-13 16:51:00) [6]

Этот вариант не проходит (см. http://www.alphaskins.com/forum/index.php?showtopic=4178). При отрисовке в расширенном варианте события в PostPaint получаются проблемы уже с выделением (у меня почему-то выделенный текст иконки использует другой размер шрифта)...


Игорь Шевченко   (2009-04-13 16:33:00) [7]


> Можно ли сделать собственную отрисовку иконок в TreeView
> и ListView таким образом, чтобы остальные действия (например,
>  выделение элементов, отрисовка значка + и линий в TreeView)
> производила сама система? Или придется все события прописывать
> самому?


Самому придется описывать только одно событие, точнее его обработчик - OnDrawItem. Но никто не мешает самому же сделать ImageList-ы и положить туда иконки, чтобы их рисовала система.


Заикин Сергей   (2009-04-13 15:35:00) [8]

Прошу прощения за выбор некорректного раздела для размещения темы.


DimaBr   (2009-04-13 15:11:00) [9]

Внимание!Здесьобсуждаются вопросы, связанные с разработкойкомпонентов, редакторов свойств, редакторов компонентов и экспертов IDE.
Вопросы по поискуи использованиюготовых компонентов, редакторов или экспертов являются нарушениемтематики и могут быть удалены.


Заикин Сергей   (2009-04-13 15:09:00) [10]

Нет, есть Delphi 7 c подключенными компонентами PNGComponents и AlphaControls. Через PNGImageList загружаю png рисунки, а затем их отображаю в sTreeView и sListView (они наследники от компонентов Delphi). Но прозрачность этих рисунков отображается некорректно - полупрозрачные элементы рисуются цветом по белому фону, особенно хорошо это заметно при установке темных скинов.


DimaBr   (2009-04-13 14:54:00) [11]

Вы пишите новый компонент ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо