OVH Cloud OVH Cloud

treeview

2 réponses
Avatar
Titeuf
comment changer la couleur d'un treeview ?
est-ce possible ?
merci

2 réponses

Avatar
François Picalausa
Hello,

Quelle coulmeur veux-tu changer exactement?
Avec quelle version des common controls?

Pour la couleur de fond du contrôle en comm ctls, tu peux envoyer un message
TVM_SETBKCOLOR
Avec
OldColor = SendMessage(Treeview.Hwnd, TVM_SETBKCOLOR, 0, Byval
RGB(128,128,128))
http://msdn.microsoft.com/library/en-us/shellcc/platform/commctls/treeview/messages/tvm_setbkcolor.asp

Les déclarations à utiliser sont les suivantes:

Const TV_FIRST = &h1100
Const TVM_SETBKCOLOR = (TV_FIRST+29)

Declare Function SendMessage _
Lib "user32" _
Alias "SendMessageA" _
( _
ByVal hwnd As Long, _
ByVal wMsg As Long, _
ByVal wParam As Long, _
lParam As Any _
) _
As Long

Function TreeView_SetBkColor (hwnd As Long, clr As Long) As Long
TreeView_SetBkColor = SendMessage(hwnd, TVM_SETBKCOLOR, 0, Byval clr)
End Sub

'TreeView_SetBkColor TreeView1.hwnd, RGB(0, 255, 255)

Avec la version 6, le cadre autour de chaque noeud n'aura pas la couleur de
fond.
On peut corriger ceci en affectant la bonne couleur à chaque noeud:
TreeView1.Nodes.Add(, , , "Test Node").BackColor = RGB(0, 255, 255)

--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net

"Titeuf" a écrit dans le message de
news:
comment changer la couleur d'un treeview ?
est-ce possible ?


Avatar
Titeuf
après quelques recherche sur internet j'ai trouvé le même code que tu
proposes
merci quand meme