Comment mettre des image png à la place des icônes ?
Et aussi comment mettre des icônes choisie et non pas de Dll ?
Merci

Heu .... Shadow dans ta demande initiale tu ne parlais pas du tree-view.Shadow a écrit :Heu je parle du Tree la hein
Je suppose que tu continue toujours à parler des icones dans le tree-view ^^.Shadow a écrit :Ok et comment je fais pour mettre mes propre icônes ?????
Code : Tout sélectionner
OpenWindow(0, 0, 0, 270, 80, "*.ico & *.png dans un TreeGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
TreeGadget(0, 5, 5, 260, 70)
UsePNGImageDecoder()
;Icone *.ico se trouvant dans le dossier d'installationn de PureBasic
LoadImage(0, #PB_Compiler_Home + "examples/sources/Data/CdPlayer.ico")
;Icone *.png se trouvant dans le dossier d'installationn de PureBasic
LoadImage(1, #PB_Compiler_Home + "examples/sources/Data/world.png")
;Parents
AddGadgetItem (0, -1, "Parent 1", ImageID(0), 0)
;Fils
AddGadgetItem(0, -1, "Child 1", ImageID(0), 1)
AddGadgetItem(0, -1, "Child 2", ImageID(1), 1)
;Expand du treeview
SetGadgetItemState(0, 0, #PB_Tree_Expanded)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
Merci Falsam mais je veux mettre des grand icônes ou image png, 32 * 32 par exempleBonjour,
Comment mettre des image png à la place des icônes ?
Et aussi comment mettre des icônes choisie et non pas de Dll ?
Merci
Avec le TreeGadget() standard, cela reste du 16x16Shadow a écrit :Merci Falsam mais je veux mettre des grand icônes ou image png, 32 * 32 par exemple
Code : Tout sélectionner
Enumeration
#MainForm
#Tree
EndEnumeration
;Petite police pour faire jolie mais pas obligatoire
If LoadFont(1, "Arial", 15)
SetGadgetFont(#PB_Default, FontID(1))
EndIf
If OpenWindow(#MainForm, 0, 0, 700, 500, "TreeGadget Large icon", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
TreeGadget(#Tree, 10, 10, 680, 480)
If OSVersion() > #PB_OS_Windows_2000
OpenLibrary(0, "uxtheme.dll")
;Eventuellement on peut commenter ces deux lignes. A vous de voir
;commentez pour voir la différence
CallFunction(0, "SetWindowTheme", GadgetID(#Tree), @" ", @" ")
SetThemeAppProperties_(1)
CloseLibrary(0)
EndIf
;Taille des icones
IconSize = 32
;
ImageList = ImageList_Create_(IconSize, IconSize, #ILC_COLOR32 | #ILC_MASK, 0, 10)
; Quelques icones de test extraites de shell32.dll
ico0 = ExtractIcon_(0, "shell32.dll", 43) ;Etoile
ico1 = ExtractIcon_(0, "shell32.dll", 44) ;Clé
ico2 = ExtractIcon_(0, "shell32.dll", 45) ;Dossier
ico3 = ExtractIcon_(0, "shell32.dll", 47) ;Cadenas
ico4 = ExtractIcon_(0, "shell32.dll", 23) ;Point d'interogation
;AJoute des icone dans la liste d'icone
ImageList_AddIcon_(ImageList, ico0)
ImageList_AddIcon_(ImageList, ico1)
ImageList_AddIcon_(ImageList, ico2)
ImageList_AddIcon_(ImageList, ico3)
ImageList_AddIcon_(ImageList, ico4)
;Création du tree-view
AddGadgetItem(#Tree, - 1, "Icon 43 ", ico0, 0)
AddGadgetItem(#Tree, - 1, "Icon 44 ", ico1, 0)
AddGadgetItem(#Tree, - 1, "Icon 45 ", ico2, 0)
AddGadgetItem(#Tree, - 1, "Icon 47 ", ico3, 0)
AddGadgetItem(#Tree, - 1, "Icon 23 ", ico4, 1)
;Et destruction (Pas sur que ce soit nécessaire)
DestroyIcon_(ico0)
DestroyIcon_(ico1)
DestroyIcon_(ico2)
DestroyIcon_(ico3)
DestroyIcon_(ico4)
;Le tour de magie
SendMessage_(GadgetID(#Tree), #TVM_SETIMAGELIST, #TVSIL_NORMAL, ImageList)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
;Destruction de la liste d'images (la aussi pas certain que ce soit nécessaire)
ImageList_Destroy_(ImageList)
EndIf
tout en délicatesse ..... Je me demande pourquoi j'ai répondu précédemment.Shadow a écrit :Bon on va tourner en rond encore longtemps comme ça ?
Code : Tout sélectionner
OpenWindow(0, 0, 0, 700, 500, "*.ico dans un TreeGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
TreeGadget(0, 5, 5, 680, 480)
If OSVersion() > #PB_OS_Windows_2000
OpenLibrary(0, "uxtheme.dll")
CallFunction(0, "SetWindowTheme", GadgetID(0), @" ", @" ")
SetThemeAppProperties_(1)
CloseLibrary(0)
EndIf
;Icone *.ico se trouvant dans le dossier d'installationn de PureBasic
Ico0 = LoadImage(#PB_Any, #PB_Compiler_Home + "examples/sources/Data/CdPlayer.ico")
;AJoute des icone dans la liste d'icone
IconSize = 32
ImageList = ImageList_Create_(IconSize, IconSize, #ILC_COLOR32 | #ILC_MASK, 0, 10)
ImageList_AddIcon_(ImageList, ImageID(ico0))
ImageList_AddIcon_(ImageList, ImageID(ico0))
ImageList_AddIcon_(ImageList, ImageID(ico0))
;Parents
AddGadgetItem (0, -1, "Parent 1", ImageID(Ico0), 0)
;Fils
AddGadgetItem(0, -1, "Child 1", ImageID(ico0), 1)
AddGadgetItem(0, -1, "Child 2", ImageID(ico0), 1)
;Expand du treeview
SetGadgetItemState(0, 0, #PB_Tree_Expanded)
;Le tour de magie
SendMessage_(GadgetID(0), #TVM_SETIMAGELIST, #TVSIL_NORMAL, ImageList)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow