Page 2 sur 2
Re: Changer la taille des icone
Publié : mar. 14/juin/2016 7:09
par Shadow
Bonjour,
Comment mettre des image png à la place des icônes ?
Et aussi comment mettre des icônes choisie et non pas de Dll ?
Merci

Re: Changer la taille des icone
Publié : mar. 14/juin/2016 7:51
par microdevweb
Dans Pb tu peux utilisé des Png aussi bien que des ico (sauf pour le curseur personnalisé d'un canvas) mais tu dois utilisé avant UsePNGImageDecoder()
Toutefois voici le lien d'un site pour
convertir en ico.
Quant au Dll, je ne voie absolument pas de quoi tu parles ?
Re: Changer la taille des icone
Publié : mar. 14/juin/2016 8:06
par Kwai chang caine
Peut être des dll windows qui contiennent les icones systeme...
Re: Changer la taille des icone
Publié : mar. 14/juin/2016 8:07
par Marc56
Au niveau des options du compilateur, l'icône du programme lui-même ne peut être qu'au format .ico
Cependant tous les programmes de gestion d'image, savent transformer en .ico
Sur PC, un visualiseur comme
Irfanview est indispensable, c'est l'un des premiers trucs à installer sur tout nouveau PC.
Gratuit, très rapide, peu encombrant, il peut aussi être utilisé en ligne de commande ce qui est très utile pour transformer via RunProgram() les formats que PB ne gère pas pour le moment.
Pour gérer les icônes et celles en bibliothèque, tu as par exemple IcoFx. Si tu n'as pas besoin de toutes les fonctionnalités de ce programme, la dernière version freeware et légère était la 1.6.4

Re: Changer la taille des icone
Publié : mar. 14/juin/2016 9:20
par Shadow
Heu je parle du Tree la hein

Re: Changer la taille des icone
Publié : mar. 14/juin/2016 10:39
par falsam
Re: Changer la taille des icone
Publié : mar. 14/juin/2016 11:11
par Shadow
Ok et comment je fais pour mettre mes propre icônes ?????
Re: Changer la taille des icone
Publié : mar. 14/juin/2016 11:49
par falsam
Shadow a écrit :Heu je parle du Tree la hein

Heu .... Shadow dans ta demande initiale tu ne parlais pas du tree-view.
http://www.purebasic.fr/french/viewtopi ... 79#p183879
Shadow a écrit :Ok et comment je fais pour mettre mes propre icônes ?????
Je suppose que tu continue toujours à parler des icones dans le tree-view ^^.
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
Re: Changer la taille des icone
Publié : mar. 14/juin/2016 12:52
par Shadow
Bonjour,
Comment mettre des image png à la place des icônes ?
Et aussi comment mettre des icônes choisie et non pas de Dll ?
Merci

Merci Falsam mais je veux mettre des grand icônes ou image png, 32 * 32 par exemple

Re: Changer la taille des icone
Publié : mar. 14/juin/2016 13:12
par Marc56
Shadow a écrit :Merci Falsam mais je veux mettre des grand icônes ou image png, 32 * 32 par exemple

Avec le TreeGadget() standard, cela reste du 16x16
http://www.purebasic.com/french/documen ... titem.html

Re: Changer la taille des icone
Publié : mar. 14/juin/2016 13:19
par Shadow
Bon on va tourner en rond encore longtemps comme ça ?

Re: Changer la taille des icone
Publié : mar. 14/juin/2016 13:23
par falsam
Peut etre que tu pourrais mettre tes icones dans un DLL et faire comme cet 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
Re: Changer la taille des icone
Publié : mar. 14/juin/2016 13:30
par falsam
Shadow a écrit :Bon on va tourner en rond encore longtemps comme ça ?

tout en délicatesse ..... Je me demande pourquoi j'ai répondu précédemment.
Re: Changer la taille des icone
Publié : mar. 14/juin/2016 13:37
par falsam
Sans DLL mais en reprenant l'exemple précédent.
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
Re: Changer la taille des icone
Publié : mar. 14/juin/2016 13:37
par Shadow
Falsam je parlais pas pour toi, merci de m'aider
J'ai manipulé ya un moment se genre de chose et j'avais réussi
à mettre les icône que je voulais mais je sais plus ou c'est
Je ne veux pas passer par une Dll mais mettre les icônes que je veux.
Je parle bien d’icônes et pas d'image png car il semble que se ne soit pas possible.
Désoler si j'ai parue insolant mais je me répète et j'arrive pas à me faire comprendre !
Edit: Voilà c'est se que je voulais
Alors un grand merci à toi maitre Falsam
Qu'est se que je ferais sans vous !