powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как закрасить цветом фон узла Treeview на всю длину
12 сообщений из 12, страница 1 из 1
Как закрасить цветом фон узла Treeview на всю длину
    #35735749
fghjfghj
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравсвтуйте.
Как закрасить цветом фон узла Treeview на всю длину? При выставлении BackColor закрашивается только та часть узла, что содержит текст..
...
Рейтинг: 0 / 0
Как закрасить цветом фон узла Treeview на всю длину
    #36082666
fghjfghj
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Как закрасить цветом фон узла Treeview на всю длину
    #36083546
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как вариант:
дополнить все узлы до одной длины пробелами

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

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

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

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

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

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

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


I Have Nine Lives You Have One Only
THINK!
...
Рейтинг: 0 / 0
Как закрасить цветом фон узла Treeview на всю длину
    #36087574
Фотография Бенедикт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fghjfghjКак закрасить цветом фон узла Treeview на всю длину? При выставлении BackColor закрашивается только та часть узла, что содержит текст..Для этого надо применять сабклассинг и ловить оповещение NM_CUSTOMDRAW, чтобы выставить поле clrTextBk структуры NMTVCUSTOMDRAW. Пример и готовый User Control есть на vbaccelerator.com.
...
Рейтинг: 0 / 0
Как закрасить цветом фон узла Treeview на всю длину
    #36087738
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Который глюкавый чуть более, чем наполовину.
...
Рейтинг: 0 / 0
Как закрасить цветом фон узла Treeview на всю длину
    #36088055
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бенедикт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
Как закрасить цветом фон узла Treeview на всю длину
    #36088166
h7h2vC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HandKot, решение найдено! Спасибо!

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


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