Boutons skinable ???

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Boutons skinable ???

Message par Kwai chang caine »

Bonjour à tous

J'ai trouvé les fenetres skinable autour d'une image et c'est super top.
Je crois meme que j'en abuse un peu d'ailleurs :?

Mais existe t'il les bouton skinable autour d'une image de façon a ce qu'il ne soit pas horriblement carré.

Ou alors une imagegadget avec les bords transparent ??

Enfin bref n'importe quoi qui a la forme d'une image et du moment que l'on peux récupérer l'evenement quand on clique dessus.

Merci et bonne journée
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

ce genre de suggestion est a transmetre a Fred, ça fait un bail que j'attends ce genre de chose en natif en purebasic

ainsi d'ailleurs que les boucles For-Next-step, utilisant des Flottants :?
c'est comme le yeti, on est pas pres de le voir, je crois :lol:
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Message par Kwai chang caine »

Bonsoir DOBRO

Et ya pas moyen de tricher comme vous savez bien faire :lol:

Avant y'avais pas de couleur aux fenetres et des petits genie avait inventé un code avant le setwindowcolor.

J'ai deja trouvé un bout d'idée, avec un bouton rond.
Ce code viens de Srod.

J'ai fait comme t'a dit, je l'ai torturé, diminué, et modifié..... :wink:
C'est pas tout a fait ce que je cherche, mais c'est deja un debut.
Malheureusement ça marche pas avec les boutonimage, juste avec les normaux.

Quelqu'un a peut etre une autre idée, pour que le tour prenne la forma d'une image a la place d'un rond.
Je sais, je sais je suis jamais content :?

Code : Tout sélectionner

hwnd=OpenWindow(1,100,100,500,500,"Test Flat scroll Bar") 
CreateGadgetList(hwnd) 
SetWindowColor(1,$FF) 

Reg=CreateEllipticRgn_(10,10,90,90) 
ButtonGadget(15,100,100,100,100,"TEST",#WS_CLIPSIBLINGS|#WS_CLIPCHILDREN) 
SetWindowRgn_(GadgetID(15),Reg,1) 

Repeat 

 Evenement = WaitWindowEvent() 
  
 If Evenement = #PB_Event_Gadget
  If EventGadget() = 15
   MessageRequester("","Clic sur bouton",0)
  EndIf 
 EndIf 
  
Until Evenement = #PB_Event_CloseWindow 
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

en jouant avec un vieux code du Soldat inconu
voici la possibilité de faire des boutons (des fenetre aussi d'ailleurs)

de forme varié (mais qui ne suivent pas une image pour l'instant)


Declare Forme(forme,bouton)

#taillex_bouton =100
#tailley_bouton =100
Enumeration
     #window
     #bouton
     #Image
EndEnumeration









hwnd= OpenWindow ( #window ,100,100,500,500, "Test Flat scroll Bar" )
CreateGadgetList (hwnd)
SetWindowColor ( #window ,$FF)

; change le chifre = change la forme !!!
; forme(0) = rectangle
; Forme(1) = rectangle avec bord arrondi
; Forme(2)= rond !!!
; Forme(3)=Triangle
; forme(4)=rectangle avec trou
; forme(5)=rond+triangle


Forme(5, #bouton ) ; rond !!!




Repeat
    
    Evenement = WaitWindowEvent ()
    
     If Evenement = #PB_Event_Gadget
         If EventGadget () = #bouton
             MessageRequester ( "" , "Clic sur bouton" ,0)
         EndIf
     EndIf
    
Until Evenement = #PB_Event_CloseWindow
    

    
Procedure Forme(forme,bouton)
     Select forme
         Case 1
            Region = CreateRoundRectRgn_ (0, 0, #taillex_bouton , #tailley_bouton , 40, 60) ; Création de la région pour faire une fenêtre avec les angles arrondis
             ButtonGadget (bouton,100,100,100,100, "TEST" , #WS_CLIPSIBLINGS|#WS_CLIPCHILDREN )
             ; CreateRoundRectRgn_(X1, Y1, X2, Y2, R1, R2)
             ; X1, Y1 : coordonné du point haut gauche de la region
             ; X1, Y1 : coordonné du point haut gauche de la region
             ; R1, R2 : rayon de l'ellipse qui va servir à arrondir les angles de la region
             SetWindowRgn_ ( GadgetID (bouton), Region, #True ) ; On applique la région
             DeleteObject_ (Region) ; On supprime la région
         Case 2
            Region = CreateEllipticRgn_ (0, 0, #taillex_bouton , #tailley_bouton ) ; Création de la région pour faire une fenêtre elliptique
             ButtonGadget (bouton,100,100,100,100, "TEST" , #WS_CLIPSIBLINGS|#WS_CLIPCHILDREN )
             ; CreateEllipticRgn_(X1, Y1, X2, Y2)
             ; X1, Y1 : coordonné du point haut gauche de la region
             ; X1, Y1 : coordonné du point haut gauche de la region
             SetWindowRgn_ ( GadgetID (bouton), Region, #True ) ; On applique la région
             DeleteObject_ (Region) ; On supprime la région
         Case 3
            Region = CreatePolygonRgn_ (?Triangle, 4, #ALTERNATE ) ; Création de la région pour faire une fenêtre elliptique
             ButtonGadget (bouton,100,100,100,100, "TEST" , #WS_CLIPSIBLINGS|#WS_CLIPCHILDREN )
             ; CreateRoundRectRgn_(Array, NbPoints, Type)
             ; Array : Adresse de la liste ou de la Data
             ; NbPoints : Nombre de points du polygone + 1 (car on fait une boucle donc on a 2 fois le premier point)
             ; Type : Voir msdn
             SetWindowRgn_ ( GadgetID (bouton), Region, #True ) ; On applique la région
             DeleteObject_ (Region) ; On supprime la région
            
            
         Case 4 ; rectangle
            Region1 = CreateRectRgn_ (0, 0, #taillex_bouton , #tailley_bouton ) ; Création d'une région en rectangle
            Region2 = CreateRectRgn_ (10, 10, #taillex_bouton - 10, 50) ; Création d'une région en rectangle
             ButtonGadget (bouton,100,100,100,100, "TEST" , #WS_CLIPSIBLINGS|#WS_CLIPCHILDREN )
             ; CreateRectRgn_(X1, Y1, X2, Y2)
             ; X1, Y1 : coordonné du point haut gauche de la region
             ; X1, Y1 : coordonné du point haut gauche de la region
             CombineRgn_ (Region1, Region1, Region2, #RGN_DIFF ) ; On combine les 2 régions
             ; Les modes suivants sont disponibles :
             ; #RGN_AND : Intersection
             ; #RGN_OR : Union
             ; #RGN_DIFF : Différences
             ; #RGN_XOR : Union moins les intersections
             SetWindowRgn_ ( GadgetID (bouton), Region1, #True ) ; On applique la région finale
             DeleteObject_ (Region1) ; On supprime les régions
             DeleteObject_ (Region2)
         Case 5
            Region1 = CreatePolygonRgn_ (?Triangle, 4, #ALTERNATE )
            Region2 = CreateEllipticRgn_ (0, 0, #taillex_bouton , #tailley_bouton )
             CombineRgn_ (Region1, Region1, Region2, #RGN_OR ) ; On combine les 2 régions
             ButtonGadget (bouton,100,100,100,100, "TEST" , #WS_CLIPSIBLINGS|#WS_CLIPCHILDREN )
             SetWindowRgn_ ( GadgetID (bouton), Region1, #True ) ; On applique la région finale
             DeleteObject_ (Region1) ; On supprime les régions
             DeleteObject_ (Region2)
            
     EndSelect
    
    
    
    
EndProcedure
    
DataSection
Triangle :
Data.l 50, 100, 0, 0, 100, 0, 50, 100 ; Coordonnées des points du triangle en x, y (il faut faire une boucle donc on revient au premier point du triangle
EndDataSection
    
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

voici une procedure qui rassemble la possibilité de faire une fenetre de la forme que l'on souhaite
et aussi des boutons de la forme que l'on souhaite :D


Declare Forme(type,forme,Gadget,posx,posy,taillex,tailley)

; type=1 change la forme de la fenetre
; type=0 change la forme du bouton

; forme specifie la forme que l'on veux

; change le chifre = change la forme !!!
; forme(0) = rectangle
; Forme(1) = rectangle avec bord arrondi
; Forme(2)= rond !!!
; Forme(3)=Triangle
; forme(4)=rectangle avec trou
; forme(5)=rond+triangle

; Gadget = si type =1 Gadget= ID de fenetre , si type=0 , Gadget=ID gadget

  ; posx= Position x de l objet a modifier
; posy Position y de l objet a modifier

; taillex=largeur de l'objet a modifier
; taillex=hauteur de l'objet a modifier

Enumeration
     #window
     #bouton
     #Image
EndEnumeration









hwnd= OpenWindow ( #window ,100,100,500,500, "Test Flat scroll Bar" )
CreateGadgetList ( WindowID ( #window ))
SetWindowColor ( #window , RGB (00,50,255))


; on modifie la fenetre situé en 100,100 de taille 500,500
posx=100
posy=100
taillex=500
tailley=500
Forme(1,1, #window ,posx,posy,taillex,tailley)


; on modifie le bouton situé en 100,100 de taille 100,100
posx=100
posy=100
taillex=100
tailley=100
Forme(0,2, #bouton ,posx,posy,taillex,tailley) ; bouton rond





Repeat
    
    Evenement = WaitWindowEvent ()
    
     If Evenement = #PB_Event_Gadget
         If EventGadget () = #bouton
             MessageRequester ( "" , "Clic sur bouton" ,0)
         EndIf
     EndIf
    
Until Evenement = #PB_Event_CloseWindow
    

    
Procedure Forme(type,forme,bouton,posx,posy,taillex,tailley)
     Select forme
         Case 1
            Region = CreateRoundRectRgn_ (0, 0, taillex,tailley, taillex/5,tailley/5) ; Création de la région pour faire une fenêtre avec les angles arrondis
            
            
             ; CreateRoundRectRgn_(X1, Y1, X2, Y2, R1, R2)
             ; X1, Y1 : coordonné du point haut gauche de la region
             ; X1, Y1 : coordonné du point haut gauche de la region
             ; R1, R2 : rayon de l'ellipse qui va servir à arrondir les angles de la region
             If type=0
                 ButtonGadget (bouton,posx,posy,taillex,tailley, "TEST" , #WS_CLIPSIBLINGS|#WS_CLIPCHILDREN )
                 SetWindowRgn_ ( GadgetID (bouton), Region, #True ) ; On applique la région
             ElseIf type=1
                 SetWindowRgn_ ( WindowID (bouton), Region, #True ) ; On applique la région
             EndIf
             DeleteObject_ (Region) ; On supprime la région
         Case 2
            Region = CreateEllipticRgn_ (0, 0, taillex,tailley) ; Création de la région pour faire une fenêtre elliptique
            
             ; CreateEllipticRgn_(X1, Y1, X2, Y2)
             ; X1, Y1 : coordonné du point haut gauche de la region
             ; X1, Y1 : coordonné du point haut gauche de la region
             If type=0
                 ButtonGadget (bouton,posx,posy,taillex,tailley, "TEST" , #WS_CLIPSIBLINGS|#WS_CLIPCHILDREN )
                 SetWindowRgn_ ( GadgetID (bouton), Region, #True ) ; On applique la région
             ElseIf type=1
                 SetWindowRgn_ ( WindowID (bouton), Region, #True ) ; On applique la région
             EndIf
             DeleteObject_ (Region) ; On supprime la région
         Case 3
            Region = CreatePolygonRgn_ (?Triangle, 4, #ALTERNATE ) ; Création de la région pour faire une fenêtre elliptique
            
             ; CreateRoundRectRgn_(Array, NbPoints, Type)
             ; Array : Adresse de la liste ou de la Data
             ; NbPoints : Nombre de points du polygone + 1 (car on fait une boucle donc on a 2 fois le premier point)
             ; Type : Voir msdn
             If type=0
                 ButtonGadget (bouton,posx,posy,taillex,tailley, "TEST" , #WS_CLIPSIBLINGS|#WS_CLIPCHILDREN )
                 SetWindowRgn_ ( GadgetID (bouton), Region, #True ) ; On applique la région
             ElseIf type=1
                 SetWindowRgn_ ( WindowID (bouton), Region, #True ) ; On applique la région
             EndIf
             DeleteObject_ (Region) ; On supprime la région
            
            
         Case 4 ; rectangle
            Region1 = CreateRectRgn_ (0,0, taillex,tailley) ; Création d'une région en rectangle
            Region2 = CreateRectRgn_ (10, 10, taillex/3 ,tailley/3) ; Création d'une région en rectangle
            
             ; CreateRectRgn_(X1, Y1, X2, Y2)
             ; X1, Y1 : coordonné du point haut gauche de la region
             ; X1, Y1 : coordonné du point haut gauche de la region
            
             CombineRgn_ (Region1, Region1, Region2, #RGN_DIFF ) ; On combine les 2 régions
            
             ; Les modes suivants sont disponibles :
             ; #RGN_AND : Intersection
             ; #RGN_OR : Union
             ; #RGN_DIFF : Différences
             ; #RGN_XOR : Union moins les intersections
             If type=0
                 ButtonGadget (bouton,posx,posy,taillex,tailley, "TEST" , #WS_CLIPSIBLINGS|#WS_CLIPCHILDREN )
                 SetWindowRgn_ ( GadgetID (bouton), Region1, #True ) ; On applique la région
             ElseIf type=1
                 SetWindowRgn_ ( WindowID (bouton), Region1, #True ) ; On applique la région
             EndIf
             DeleteObject_ (Region1) ; On supprime les régions
             DeleteObject_ (Region2)
         Case 5
            Region1 = CreatePolygonRgn_ (?Triangle, 4, #ALTERNATE )
            Region2 = CreateEllipticRgn_ (0,0, taillex,tailley)
             CombineRgn_ (Region1, Region1, Region2, #RGN_OR ) ; On combine les 2 régions
            
             If type=0
                 ButtonGadget (bouton,posx,posy,taillex,tailley, "TEST" , #WS_CLIPSIBLINGS|#WS_CLIPCHILDREN )
                 SetWindowRgn_ ( GadgetID (bouton), Region1, #True ) ; On applique la région
             ElseIf type=1
                 SetWindowRgn_ ( WindowID (bouton), Region1, #True ) ; On applique la région
             EndIf
             DeleteObject_ (Region1) ; On supprime les régions
             DeleteObject_ (Region2)
            
     EndSelect
    
    
    
    
EndProcedure
    
DataSection
Triangle :
Data.l 50, 100, 0, 0, 100, 0, 50, 100 ; Coordonnées des points du triangle en x, y (il faut faire une boucle donc on revient au premier point du triangle
EndDataSection
    
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Message par Kwai chang caine »

Je te remercie DOBRO pour ces codes qui vont m'etre bien utiles.

Pourquoi est ce plus dur de faire un masque image pour un gadgetimage que pour une fenetre ????
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

.......
Dernière modification par Backup le mar. 19/août/2014 15:04, modifié 1 fois.
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Message par Kwai chang caine »

Bravo, ça commence a prendre forme
Je ne savais pas que tu travaillais dessus 8)

T'es super sympa.

J'ai peut etre trouvé une bidouille.
J'ai pris une brique par ci, une par la.
Et j'ai trouvé ça.

J'suis tellement content que j'en pleurerais :onfire:

Ca fait ce que je voulais, mais je comprend encore pas tout les morceaux de code des autres :oops:
Celui de l'image transparente viens de NetMaestro

Goute moi ça, et dizilemele si il manque du sel ou du poivre :lol:

Les images c'est la:
http://purebasic.myftp.org/files/413/Images.zip

Code : Tout sélectionner

Declare DrawTransparentBitmap(hdc, hBitmap, xStart, yStart, TransColor) 
Declare OpenMaskedWindow_Fusee(WinID, x, y, Title.s, imID)
Declare WindowClientMouseX(m) 
Declare WindowClientMouseY(m) 
Global HwndFusee
UsePNGImageDecoder()
Dim BallonX(10)
Dim BallonY(10)
BallonX(0)= 50
BallonY(0)= 50
BallonX(1)= 80
BallonY(1)= 150

HwndFusee = OpenMaskedWindow_Fusee(1, GetSystemMetrics_(#SM_CXSCREEN) / 4, GetSystemMetrics_(#SM_CYSCREEN) / 4, "", 0) 
LoadImage(0, "c:\canon.bmp") 
LoadImage(1, "c:\ball.bmp") 

For i = 0 To 1
 dc = StartDrawing(WindowOutput(1)) 
 DrawTransparentBitmap(dc,ImageID(i), BallonX(i), BallonY(i), #White) 
 StopDrawing() 
Next

Repeat 

 Evenement = WaitWindowEvent() 
 
 If Evenement = #WM_LBUTTONDOWN
  
  For i = 0 To 1
   If WindowClientMouseX(1) > BallonX  And WindowClientMouseX(1) < BallonX(i) + ImageWidth(i) And WindowClientMouseY(1) > BallonY(i) And WindowClientMouseY(1) < BallonY(i) + ImageHeight(i) 
    MessageRequester("","Clic sur bouton " + Str(i) ,0)
   EndIf 
  Next
   
 EndIf
  
Until Evenement = #PB_Event_CloseWindow 

Procedure DrawTransparentBitmap(hdc, hBitmap, xStart, yStart, TransColor) 
  ; by netmaestro based on http://support.microsoft.com/kb/79212/EN-US/ 
  Define.POINT  ptSize 
  hdcTemp = CreateCompatibleDC_(hdc) 
  SelectObject_(hdcTemp, hBitmap) 
  GetObject_(hBitmap, SizeOf(BITMAP), bm.BITMAP) 
  ptSize\x = bm\bmWidth 
  ptSize\y = bm\bmHeight 
  DPtoLP_(hdcTemp, @ptSize, 1) 
  hdcBack   = CreateCompatibleDC_(hdc) 
  hdcObject = CreateCompatibleDC_(hdc) 
  hdcMem    = CreateCompatibleDC_(hdc) 
  hdcSave   = CreateCompatibleDC_(hdc) 
  bmAndBack   = CreateBitmap_(ptSize\x, ptSize\y, 1, 1, #Null) 
  bmAndObject = CreateBitmap_(ptSize\x, ptSize\y, 1, 1, #Null) 
  bmAndMem    = CreateCompatibleBitmap_(hdc, ptSize\x, ptSize\y) 
  bmSave      = CreateCompatibleBitmap_(hdc, ptSize\x, ptSize\y) 
  bmBackOld   = SelectObject_(hdcBack, bmAndBack) 
  bmObjectOld = SelectObject_(hdcObject, bmAndObject) 
  bmMemOld    = SelectObject_(hdcMem, bmAndMem) 
  bmSaveOld   = SelectObject_(hdcSave, bmSave) 
  SetMapMode_(hdcTemp, GetMapMode_(hdc)) 
  BitBlt_(hdcSave, 0, 0, ptSize\x, ptSize\y, hdcTemp, 0, 0, #SRCCOPY) 
  cColor = SetBkColor_(hdcTemp, TransColor) 
  BitBlt_(hdcObject, 0, 0, ptSize\x, ptSize\y, hdcTemp, 0, 0, #SRCCOPY) 
  SetBkColor_(hdcTemp, cColor) 
  BitBlt_(hdcBack, 0, 0, ptSize\x, ptSize\y, hdcObject, 0, 0, #NOTSRCCOPY) 
  BitBlt_(hdcMem, 0, 0, ptSize\x, ptSize\y, hdc, xStart, yStart, #SRCCOPY) 
  BitBlt_(hdcMem, 0, 0, ptSize\x, ptSize\y, hdcObject, 0, 0, #SRCAND) 
  BitBlt_(hdcTemp, 0, 0, ptSize\x, ptSize\y, hdcBack, 0, 0, #SRCAND) 
  BitBlt_(hdcMem, 0, 0, ptSize\x, ptSize\y, hdcTemp, 0, 0, #SRCPAINT) 
  BitBlt_(hdc, xStart, yStart, ptSize\x, ptSize\y, hdcMem, 0, 0, #SRCCOPY) 
  BitBlt_(hdcTemp, 0, 0, ptSize\x, ptSize\y, hdcSave, 0, 0, #SRCCOPY) 
  DeleteObject_(SelectObject_(hdcBack, bmBackOld)) 
  DeleteObject_(SelectObject_(hdcObject, bmObjectOld)) 
  DeleteObject_(SelectObject_(hdcMem, bmMemOld)) 
  DeleteObject_(SelectObject_(hdcSave, bmSaveOld)) 
  DeleteDC_(hdcMem) 
  DeleteDC_(hdcBack) 
  DeleteDC_(hdcObject) 
  DeleteDC_(hdcSave) 
  DeleteDC_(hdcTemp) 
EndProcedure 

Procedure WindowClientMouseX(win)             ; added param, 11.12.03 
  ; Returns X-Position of MouseCursor 
  ; in the current window's client area 
  ; or -1 if mouse cursor isnt in this area. 
  GetCursorPos_(mouse.POINT) 
  ScreenToClient_(WindowID(win),mouse) 
  GetClientRect_(WindowID(win),rect.RECT) 
  If mouse\x < 0 Or mouse\x > rect\right 
    ProcedureReturn -1 
  ElseIf mouse\y < 0 Or mouse\y > rect\bottom ; added 11.12.03 
    ProcedureReturn - 1 
  Else 
    ProcedureReturn mouse\x 
  EndIf 
EndProcedure 

Procedure WindowClientMouseY(win)             ; added param, 11.12.03 
  ; Returns Y-Position of MouseCursor 
  ; in the current window's client area 
  ; or -1 if mouse cursor isnt in this area. 
  GetCursorPos_(mouse.POINT) 
  ScreenToClient_(WindowID(win),mouse) 
  GetClientRect_(WindowID(win),rect.RECT) 
  If mouse\y < 0 Or mouse\y > rect\bottom 
    ProcedureReturn -1 
  ElseIf mouse\x < 0 Or mouse\x > rect\right  ; added 11.12.03 
    ProcedureReturn - 1 
  Else 
    ProcedureReturn mouse\y 
  EndIf 
EndProcedure 

Procedure OpenMaskedWindow_Fusee(WinID, x, y, Title.s, imID)

 HwndFusee = OpenWindow(winID, GetSystemMetrics_(#SM_CXSCREEN), y, 468, 324, Title, #WS_POPUP)
 Memhandle = GlobalAlloc_(#GMEM_MOVEABLE,1976)
 *Mem = GlobalLock_(Memhandle)
 UnpackMemory(?Fusee_Mask, *Mem)
 Region = ExtCreateRegion_(0,1968, *Mem)
 SetWindowRgn_(HwndFusee, Region, #True)
 Pic = CatchImage(imID,?Fusee)
 Brush = CreatePatternBrush_(Pic)
 SetClassLong_(HwndFusee, #GCL_HBRBACKGROUND, Brush)
 ResizeWindow(WinID, x, y, #PB_Ignore, #PB_Ignore)
 GlobalUnlock_(Memhandle)
 GlobalFree_(Memhandle)
 DeleteObject_(Region)
 ProcedureReturn HwndFusee

 DataSection

  Fusee:
  ;***********

  IncludeBinary "c:\Fusee.png"

  Fusee_Mask:
  ;***********

  Data.l $7B0434A ,$37FC0000,$8A10001 ,$1BCA20C8,$39160101,$A02A5908,$4604016E,$D8AD0C0 ,$85CC214 ,$9D22282B
  Data.l $805DF3C9,$8BA2CC61,$49860462,$842C797 ,$57082EA3,$17364404,$1C400B06,$405928E6,$B0C522B6,$CB9830B9
  Data.l $B34DD332,$36180456,$5A711997,$B402BA66,$8828C022,$74190C19,$22B32B40,$1D2B8820,$56F6020C,$9DD730C 
  Data.l $60210AE ,$20C244E0,$B1C72B28,$EEA312B6,$C044211 ,$41840840,$8695620 ,$B6C7B345,$C2840E84,$4E854218
  Data.l $5381A719,$9DD42742,$60220AD4,$C2D4E00 ,$C56AF02 ,$AD092B23,$E0067610,$E020DD44,$B0B0022A,$610AC312
  Data.l $664EC562,$7513C89D,$CB20B3A7,$387A8018,$751850D6,$60221A8F,$C394200 ,$C55AC02 ,$AC692AD3,$E006B610
  Data.l $143DDD44,$C5532C6 ,$AC092AEB,$EB1AE610,$3801D614,$AA087751,$AACC808A,$18423104,$56D33156,$D5F4AD27
  Data.l $7751AB89,$808AEB1A,$31163801,$C41A608 ,$808A78A2,$31264453,$8B10A408,$E022A0E8,$C4D5124 ,$9310A782
  Data.l $E3299A28,$AA0C5134,$9842D144,$75133154,$8A9AEA7 ,$156C8018,$3105C083,$22A0E8A ,$C59B154E,$AC416020
  Data.l $808AA3A2,$31754593,$2CC49608,$3808063A,$8318145D,$A630A920,$4EEA628E,$30118557,$6322700 ,$18625201
  Data.l $9C04D71D,$418D0A32,$D1965470,$49C02891,$41820A3 ,$1C084546,$EA92DA80,$38015514,$8A087751,$28EE808A
  Data.l $400C31C6,$28EAA308,$1C626594,$9C048B1D,$51E40A3A,$31514F66,$A627A88C,$80189842,$40837513,$A3C08A8 
  Data.l $8541F63 ,$A270D01C,$1504A4EE,$C610301 ,$A40A1064,$7D8C47D3,$71942C74,$4C742902,$42A2E90B,$18C2813A
  Data.l $115C748 ,$644C90A7,$26100010,$DD4471D4,$32C2A8A9,$AA60E006,$92931498,$61081162,$E9C6A58B,$9B2720A4
  Data.l $A6E5842 ,$59041963,$70619C08,$98A1EC9A,$63134DD3,$21652709,$A70B20C ,$58741383,$414E9C04,$29C0A72C
  Data.l $4A7413A7,$E53A4586,$653AC414,$1D3A749C,$7CC67CD5,$3A7C678A,$3A7E14E9,$842C9C65,$59389639,$EAD58276
  Data.l $8C2A30A7,$FD389865,$E9CA0274,$18C10B2 ,$C229CE15,$76102022,$2A0A39D9,$196295B4,$9C08B5E6,$15090A84
  Data.l $CA74B84 ,$B3325BF3,$150D50D5,$BA0084C6,$2A443810,$2343    

 EndDataSection

EndProcedure
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Répondre