Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.03.07;
Скачать: CL | DM;

Вниз

Собственная отрисовка иконок в TreeView и ListView   Найти похожие ветки 

 
Заикин Сергей   (2009-04-13 14:26) [0]

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


 
DimaBr ©   (2009-04-13 14:54) [1]

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


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

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


 
DimaBr ©   (2009-04-13 15:11) [3]

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


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

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


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


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


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


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

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


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


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


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


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


И че ?


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

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


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


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


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


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

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


 
DVM ©   (2009-04-14 19:02) [11]


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

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



Страницы: 1 вся ветка

Текущий архив: 2010.03.07;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.014 c
2-1262702443
RWolf
2010-01-05 17:40
2010.03.07
ленивые вычисления


1-1220526665
evgenij
2008-09-04 15:11
2010.03.07
узнать запущена моя программа или нет


15-1260997140
Кто б сомневался
2009-12-16 23:59
2010.03.07
Web при помощи Delphi


2-1261744100
Who_is_you?
2009-12-25 15:28
2010.03.07
Процедура прерывания. В Delphi 7 pointer ?


2-1262678486
Eh
2010-01-05 11:01
2010.03.07
Меню как в Access