Icone de l'EXE

Sujets variés concernant le développement en PureBasic
Avatar de l’utilisateur
flaith
Messages : 1487
Inscription : jeu. 07/avr./2005 1:06
Localisation : Rennes
Contact :

Icone de l'EXE

Message par flaith »

bonjour,

j'ai recherché (et pas trouvé) d'informations à ce sujet.
Je m'explique, j'indique dans les paramètres de compilation, le nom de mon icône.
Ce que je voudrais c'est récupérer cette image pour ensuite l'afficher dans ma fenêtre "A propos de" par exemple et ceci, sans avoir à faire un "includebinary", car dans ce cas mon exe aura deux fois l'icône.

suis-je clair :roll:

d'avance merci :)
gnozal
Messages : 832
Inscription : mar. 07/déc./2004 17:35
Localisation : France
Contact :

Re: Icone de l'EXE

Message par gnozal »

flaith a écrit :bonjour,

j'ai recherché (et pas trouvé) d'informations à ce sujet.
Je m'explique, j'indique dans les paramètres de compilation, le nom de mon icône.
Ce que je voudrais c'est récupérer cette image pour ensuite l'afficher dans ma fenêtre "A propos de" par exemple et ceci, sans avoir à faire un "includebinary", car dans ce cas mon exe aura deux fois l'icône.

suis-je clair :roll:

d'avance merci :)
Comme ceci par exemple (on récupère le handle de l'icône de la fenêtre de l'application avec GetClassLong_(WindowID(#Window), #GCL_HICON))

Code : Tout sélectionner

;{- Enumerations
;{ Windows
Enumeration
  #Window_0
EndEnumeration
;}
;{ Gadgets
Enumeration
  #ButtonImageGadget_0
EndEnumeration
;}
;}
Procedure OpenWindow_Window_0()
  If OpenWindow(#Window_0, 450, 200, 400, 400, "#Window_0", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
    If CreateGadgetList(WindowID(#Window_0))
      ButtonImageGadget(#ButtonImageGadget_0, 113, 92, 161, 143, GetClassLong_(WindowID(#Window_0), #GCL_HICON))
    EndIf
  EndIf
EndProcedure

OpenWindow_Window_0()

;{- Event loop
Repeat
  Event = WaitWindowEvent()
  Select Event
    ; ///////////////////
    Case #PB_Event_Gadget
      EventGadget = EventGadget()
      EventType = EventType()
      If EventGadget = #ButtonImageGadget_0
      EndIf
      ; //////////////////////
    Case #PB_Event_CloseWindow
      EventWindow = EventWindow()
      If EventWindow = #Window_0
        Break
      EndIf
  EndSelect
ForEver
;}
On peut aussi utiliser la fonction API ExtractIcon_().
Avatar de l’utilisateur
flaith
Messages : 1487
Inscription : jeu. 07/avr./2005 1:06
Localisation : Rennes
Contact :

Message par flaith »

Deux mots : "Merci beaucoup"
:D
Répondre