barre de defilement

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
venom
Messages : 3137
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

barre de defilement

Message par venom »

bonjour j'aimerait savoir si la fonction

Code : Tout sélectionner

TrackBarGadget(#Gadget, x, y, Width, Height, Minimum, Maximum [, Options]) 
peut servir comme "barre de defilement"(une barre qui indique le temps de la musique ou du film)voila je ne sait pas si cette fonction

Code : Tout sélectionner

TrackBarGadget(#Gadget, x, y, Width, Height, Minimum, Maximum [, Options]) 
sert a sa si quelquin le sait merci de me le faire part :D

pour plus d'info voici mon code

Code : Tout sélectionner

Resultat = InitMovie()  

 Enumeration 
  #Window_0 
EndEnumeration 

  
Enumeration 
  #liste 
  #play 
  #StopMovie 
  #Image 
  #PauseMovie 
EndEnumeration 


Procedure Open_Window_0() 
 If OpenWindow(0,0,0,700,400,#PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_ScreenCentered,"audio player 1.0")  
  If CreateGadgetList(WindowID()) 
      ButtonGadget(#liste, 2, 1, 138, 30, "LISTE   ~~") 
      ButtonGadget(#play, 140, 1, 140, 30, "LECTURE   >") 
      ButtonGadget(#PauseMovie, 280, 1, 140, 30, "PAUSE   II", #PB_Button_Toggle ) 
      ButtonGadget(#StopMovie, 420, 1, 140, 30,"STOP  #") 
      ButtonGadget(#Image, 560, 1, 140, 30, "VISUALISATION"): DisableGadget(3,1)
  
      EndIf 
        EndIf 
        
EndProcedure 


Open_Window_0() 

Repeat 
  
  Event = WaitWindowEvent() 
  
  If Event = #PB_EventGadget 
  
    
    GadgetID = EventGadgetID() 
    
    If GadgetID = #liste 
    
          NomFichier$ = OpenFileRequester("Titre", "::{450d8fba-ad25-11d0-98a8-0800361b1103}\" , "Fichiers|*.*", 0) 
      LoadMovie(1, NomFichier$) 
    
    ElseIf GadgetID = #play  
      
      PlayMovie(1, FenetreID)  
          
    ElseIf GadgetID = #StopMovie 
    
    StopMovie() 
    
    ElseIf GadgetID = #Image 
    
      NomFichier$ = OpenFileRequester("Titre", "::{450d8fba-ad25-11d0-98a8-0800361b1103}\" , "Fichiers|*.*", 0) 
      LoadImage(1, NomFichier$) 
      
      ElseIf GadgetID = #PauseMovie 
      If GetGadgetState(#PauseMovie) = 1 
        PauseMovie() 
      Else 
        ResumeMovie() 
      EndIf 

      
    EndIf 
    
  EndIf 
  
Until Event = #PB_EventCloseWindow 

End  
merci :wink: :D
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

Code : Tout sélectionner

; Resultat = InitMovie() Pourqoi mettre Resultat = si on ne s'en sert pas ?
If InitMovie() = 0
  MessageRequester("Erreur", "Impossible de lire des vidéos", 0)
  End
EndIf

Enumeration
  #Window_0
EndEnumeration


Enumeration
  #liste
  #play
  #StopMovie
  #Image
  #PauseMovie
  #AffichageCurseurLecture
EndEnumeration

Procedure Rafraichir(Valeur.l)
  ; valeur correspond à la fréquence de rafraichissement en ms
  Repeat
    Delay(Valeur)
    Position = MovieStatus()
    If Position > 0
      SetGadgetState(#AffichageCurseurLecture, Int(1000 * Position / MovieLength()))
    EndIf
  ForEver
EndProcedure


If OpenWindow(0, 0, 0, 700, 400, #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered, "audio player 1.0")
  If CreateGadgetList(WindowID())
    ButtonGadget(#liste, 2, 1, 138, 30, "LISTE   ~~")
    ButtonGadget(#play, 140, 1, 140, 30, "LECTURE   >")
    ButtonGadget(#PauseMovie, 280, 1, 140, 30, "PAUSE   II", #PB_Button_Toggle )
    ButtonGadget(#StopMovie, 420, 1, 140, 30, "STOP  #")
    ButtonGadget(#Image, 560, 1, 140, 30, "VISUALISATION") : DisableGadget(3, 1)
    ProgressBarGadget(#AffichageCurseurLecture, 2, 32, 696, 15, 0, 1000, #PB_ProgressBar_Smooth)
  EndIf
EndIf



Repeat

  Event = WaitWindowEvent()
  
  If Event = #PB_EventGadget
     
    Select EventGadgetID()
        
      Case #liste
        NomFichier$ = OpenFileRequester("Titre", "::{450d8fba-ad25-11d0-98a8-0800361b1103}\", "Fichiers|*.*", 0)
        LoadMovie(1, NomFichier$)
        
      Case #play
        PlayMovie(1, WindowID())
        ResizeMovie(0, 50, MovieWidth(), MovieHeight()) ; pour redimensionner et placer la vidéo dans la fenêtre, ici, je ne change pas la taille mais il faudra le faire pour les vidéo trop grande
        ; on crée un thread qui va servir à rafraichir la barre de progression
        ThreadID = CreateThread(@Rafraichir(), 250)
        
      Case #StopMovie
        StopMovie()
        KillThread(ThreadID) ; on détruit le thread
        
      Case #Image
        NomFichier$ = OpenFileRequester("Titre", "::{450d8fba-ad25-11d0-98a8-0800361b1103}\", "Fichiers|*.*", 0)
        LoadImage(1, NomFichier$)
        
      Case #PauseMovie
        If GetGadgetState(#PauseMovie) = 1
          PauseMovie()
        Else
          ResumeMovie()
        EndIf
        
        
    EndSelect

  EndIf
  
Until Event = #PB_EventCloseWindow

End
et voilà, je suis passer par un thread our permettre l'affichage de la position en même temps que le reste.
j'ai mis un progressbar mais avec un TrackbarGadget, c'est la même chose
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Avatar de l’utilisateur
venom
Messages : 3137
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Message par venom »

je te remercie le soldat inconu c'est bien sa que je chercher puis c'est cool maintenant la video aparet dans ma fenetre et pas dans une autre je te remercie et je vais maintenant aller voir les changement que tu a fait sur le code encore merci :D :wink:



@++
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

ah oui, pour la vidéo, il y avait les problèmes suivants :
- PlayMovie(1, WindowID()), tu avais mis un handle de fenêtre qui n'existait pas
- il manquait un ResizeMovie() pour positionner la vidéo dans la fen
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Avatar de l’utilisateur
venom
Messages : 3137
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Message par venom »

mais tu men a mi un dans le code c'est

Code : Tout sélectionner

ResizeMovie(0, 50, MovieWidth(), MovieHeight()) ; pour redimensionner et placer la vidéo dans la fenêtre
mais le probleme c'est que je peut le bouger juste de haut en bas et de droite a gauche tu voie quoi 8O :D donc c'est sa que je comprent pas j'ai essayer de faire sa

Code : Tout sélectionner

ResizeMovie(0, 50,100, 50 MovieWidth(), MovieHeight()) 
par exemple mais sa me met une erreur donc voila tu a bien mi la fonction

Code : Tout sélectionner

ResizeMovie()
pourtant 8O
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

ResizeMovie s'applique à la vidéo en cours donc on ne met pas l'identifiant de la vidéo

les paramètres de la fonction sont donc :
ResizeMovie(x, y, TailleX, TailleY)
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Avatar de l’utilisateur
venom
Messages : 3137
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Message par venom »

ok merci desol de repondre ausi tar mais penden 1 semaine j'aver pu internet :( mais maintenant j'ai re internet . je vais essayer se que tu ma dit on verra
ResizeMovie(x, y, TailleX, TailleY)
Lukky
Messages : 340
Inscription : dim. 25/janv./2004 12:22
Localisation : Morbihan

Message par Lukky »

La méthode globale à encore frappée !!

JL
Quand on me gonfle trop j'éclate, sinon ça va !
Répondre