re

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
david
Messages : 208
Inscription : jeu. 03/févr./2005 21:10

re

Message par david »

j'ai trouvé le bouton merci
alors je repose la question
ci-après le code:

Code : Tout sélectionner

UseJPEGImageDecoder ()  ;***DECODEUR JPEG
UsePNGImageDecoder ()   ;
UseTGAImageDecoder ()   ;
UseTIFFImageDecoder ()  ;

;***********DECODE VARIABLES***********
chemin$="C:\Documents and Settings\David\Mes documents\Mes images\Gabrielle"
a=0 
textb=21 
textb$=Str(textb) 
taille=3
fenetre=tailley
transparent=75
taillex= 200
tailley = 200
posix = 200
posiy = 200
;
;
;
Declare TimerProc(hwnd.l, uMsg.l, idEvent.l, dwTime.l) 
Declare SetWinTransparency(WinHandle.l, Transparency_Level.l) 
Global bouton,flag,Handle 

;- Gadget Constants 
; 
Enumeration 
   #Window_0 
   #Button_1 
   #Button_2 
   #Button_3
   #String_0 
   #Button_4 
   #Button_5 
   #Button_6 
   #Button_7
   #Button_8 
   #Button_9 
    #image_gadget1 ;arriere plan
    #image1 ;gaby1
    #image2 ;gaby2
    #image0 ; image variable...
#TrackBar_0
#TrackBar_10
#TrackBar_2
#TrackBar_20

   #Path_0
   #Button_11
   
EndEnumeration 
;
;
;************************************
;*** creation alerte timing *********
;************************************
Procedure AlertThread(Parameter)

  Repeat
    MessageRequester("Info", "Alert ("+Str(Parameter)+")", 0)
    Delay(3000)
  ForEver

EndProcedure

;************************************
;*** charge image programme *********
;************************************

LoadImage ( #image1 , path1$+"gaby1.jpg" ) ;image de depart 
LoadImage ( #image2 , path2$+"gaby2.jpg" );image en cas de clic sur bouton 
ResizeImage ( #image1 , 112*taille, 83*taille ) 
ResizeImage ( #image2 , 112*taille, 83*taille) 


If OpenWindow ( #Window_0 , taillex, fenetre, posix, posiy, #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "Compteur Atouts" ) 
 SetWindowPos_(WindowID(), -1, 0, 0, 0, 0, #SWP_NOSIZE | #SWP_NOMOVE) ;fenetre toujours devant
    Handle = WindowID (0) 
     
     If CreateGadgetList ( WindowID ()) 
         ImageGadget ( #image_gadget1 , 2,34,100*taille,100*taille, UseImage ( #image1 )) 
  
      ButtonGadget ( #Button_8 , 42, 2, 60, 30, "visio" )
 
       TextGadget    (#TrackBar_10, 342,46,120, 30,"Niv. Transparence",#PB_Text_Center)
       TrackBarGadget(#TrackBar_0, 342, 60, 120, 30, 25, 255)
       SetGadgetState(#TrackBar_0, transparent)
       
  ;            TextGadget    (#TrackBar_20, 342,110,120, 30,"durée images",#PB_Text_Center)
  ;     TrackBarGadget(#TrackBar_2, 342, 124, 120, 30, 25, 255)
  ;     SetGadgetState(#TrackBar_2, delay)
   
      StringGadget  (#Path_0,  342, 180, 118, 24, chemin$)
      ButtonGadget ( #Button_11 , 342, 194, 120, 20, "valider répertoire" ) 
     EndIf 
 

      Repeat  ;La boucle Repeat-Until sert à la gestion des évènements 

      SetWinTransparency ( WindowID (), transparent)       
 
        EventID.l= WaitWindowEvent () ; on récupère un évènement 
         Select EventID ; on sélectionne cet évènement 
             Case #PB_EventGadget ; cet évènement concerne une action sur un Gadget 
                 Select EventGadgetID () ; dans ce cas, on récupère l'identifiant du gadget qui l'a créé 

                  Case #Button_8 ;visionneuse charge images
                 CreateThread(@AlertThread(), 154)

           
;*********************************************** 
;*** Examine le dossier et remplit Maliste() *** 
;*********************************************** 

NewList Maliste.s() 

If ExamineDirectory (0,chemin$,"*.*") 
  Repeat 
    Select NextDirectoryEntry() 
      Case 0 
        Break 
      Case 1 
        FileName$ = DirectoryEntryName() 
        FileExt$ = UCase(GetExtensionPart(FileName$)) 
        If FindString("JPG,JPEG,BMP,PNG",FileExt$,1) 
          AddElement(Maliste()) 
          Maliste() = FileName$ 
        EndIf 
    EndSelect 
  ForEver 
Else 
  MessageRequester("Erreur","impossible de créer la liste"+#LF$+"Veuillez reconfigurer les paramètres...") 
EndIf 

;********************************** 
;*** Vérification de Maliste(x) *** 
;********************************** 

Compteur = CountList(Maliste()) 

If Compteur 
;  MessageRequester("Information",Str(Compteur)+" images chargées.") 
Else 
  MessageRequester("Erreur","Aucune image chargée.") 
  End 
EndIf 
  
;******************************************* 
;*** Affiche aléatoirement Maliste(x) *** 
;******************************************* 

SelectElement(Maliste(),Random(Compteur)) 
  
  If LoadImage(#image0,chemin$+"\"+Maliste()) 
  ResizeImage ( #image0 , 112*taille, 83*taille )
    SetGadgetState(#image_gadget1,UseImage(#image0)) 
  EndIf 
     
 
                   
                   EndSelect 
                 
             Case #PB_Event_CloseWindow ; cet évènement concerne la fermeture de la fenêtre 
                Quit=1 
         EndSelect 
         
     Until Quit=1 
EndIf 
;
;
;
Procedure SetWinTransparency(WinHandle.l, Transparency_Level.l) 
     SetWindowLong_ (WinHandle, #GWL_EXSTYLE , GetWindowLong_ (WinHandle, #GWL_EXSTYLE ) | $00080000) ; #WS_EX_LAYERED = $00080000 
     If OpenLibrary (0, "user32.dll" ) 
         CallFunction (0, "SetLayeredWindowAttributes" , WinHandle, 0, Transparency_Level, 2) 
         CloseLibrary (0) 
     EndIf 
EndProcedure 
merci d'avance si vous pouvez m'aider car si je met la procedure après il ne la trouve pas, si je la met avant image#0 n'est pas content, si je le met pas forcement la question ne se pose même plus, mais j'aurais vraiment voulu faire ça