Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как закрасить цветом фон узла Treeview на всю длину / 12 сообщений из 12, страница 1 из 1
25.12.2008, 17:49
    #35735749
fghjfghj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрасить цветом фон узла Treeview на всю длину
Здравсвтуйте.
Как закрасить цветом фон узла Treeview на всю длину? При выставлении BackColor закрашивается только та часть узла, что содержит текст..
...
Рейтинг: 0 / 0
09.07.2009, 17:01
    #36082666
fghjfghj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрасить цветом фон узла Treeview на всю длину
...
Рейтинг: 0 / 0
10.07.2009, 09:03
    #36083546
HandKot
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрасить цветом фон узла Treeview на всю длину
как вариант:
дополнить все узлы до одной длины пробелами

I Have Nine Lives You Have One Only
THINK!
...
Рейтинг: 0 / 0
10.07.2009, 10:24
    #36083753
h7h2vC
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрасить цветом фон узла Treeview на всю длину
HandKot, хотелось пограмотнее вариант. Особенно учитывая то, что оба дерева - это один и тот же TreeView контрол, но просто в разных формах. Т.е. в одном из двух мест дерево отрисовывается правильно.
...
Рейтинг: 0 / 0
13.07.2009, 08:51
    #36086149
HandKot
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрасить цветом фон узла Treeview на всю длину
ну так посмотрите, какие св-ва у них отличаются
к примеру есть такое FullRowSelect

ЗЫЖ сказал бы точно, но у меня Васик не стоит, а в екселе не всё корректно работает и проверить нельзя (к примеру это св-во не работает, хоят по МСДН оно за это отвечает)

Код: plaintext
1.
2.
3.
4.
TreeView..::.FullRowSelect - свойство 

Обновлен: Ноябрь 2007

Получает или задает значение, указывающее, распространяется ли выделение выбора на всю ширину элемента управления иерархического представления.

I Have Nine Lives You Have One Only
THINK!
...
Рейтинг: 0 / 0
13.07.2009, 09:45
    #36086200
h7h2vC
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрасить цветом фон узла Treeview на всю длину
HandKot, FullRowSelect у них обоих = TRUE
...
Рейтинг: 0 / 0
13.07.2009, 14:01
    #36086860
HandKot
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрасить цветом фон узла Treeview на всю длину
проверьте остальные св-ва

или может так
взять "нормальное" дерево и сделать его копию с именем "ненормального" дерева


I Have Nine Lives You Have One Only
THINK!
...
Рейтинг: 0 / 0
13.07.2009, 18:37
    #36087574
Бенедикт
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрасить цветом фон узла Treeview на всю длину
fghjfghjКак закрасить цветом фон узла Treeview на всю длину? При выставлении BackColor закрашивается только та часть узла, что содержит текст..Для этого надо применять сабклассинг и ловить оповещение NM_CUSTOMDRAW, чтобы выставить поле clrTextBk структуры NMTVCUSTOMDRAW. Пример и готовый User Control есть на vbaccelerator.com.
...
Рейтинг: 0 / 0
13.07.2009, 21:01
    #36087738
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрасить цветом фон узла Treeview на всю длину
Который глюкавый чуть более, чем наполовину.
...
Рейтинг: 0 / 0
14.07.2009, 07:59
    #36088055
HandKot
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрасить цветом фон узла Treeview на всю длину
БенедиктfghjfghjКак закрасить цветом фон узла Treeview на всю длину? При выставлении BackColor закрашивается только та часть узла, что содержит текст..Для этого надо применять сабклассинг и ловить оповещение NM_CUSTOMDRAW, чтобы выставить поле clrTextBk структуры NMTVCUSTOMDRAW. Пример и готовый User Control есть на vbaccelerator.com.

Иногда всё-таки лучше имкать более простые решения

как было сказано выше, св-во FullRowSelect отвечает за подстветку всего узла, НО оно работает только в следующих случаях :
1) св-во Style выставлено в значение которое не содержит " TreeLine "
2) cв-во Checkbox выставлено в true , св-во Style не имеет значение (как раз этим и отличаются по картинкам "плохое" и "хорошее" деревья)


или ?


I Have Nine Lives You Have One Only
THINK!
...
Рейтинг: 0 / 0
14.07.2009, 09:33
    #36088166
h7h2vC
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрасить цветом фон узла Treeview на всю длину
HandKot, решение найдено! Спасибо!

Сделал так:
1) В дизайнере на форме - TreeView.Checkboxes = TRUE
2) В Form_Load() формы - TreeView.Checkboxes = FALSE
...
Рейтинг: 0 / 0
14.07.2009, 10:55
    #36088354
Бенедикт
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как закрасить цветом фон узла Treeview на всю длину
Действительно, в шестых Common Controls у Node есть же BackColor, поэтому всё просто.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как закрасить цветом фон узла Treeview на всю длину / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]