Page 1 sur 1

Crée un fenetre pendant Xtemp

Publié : sam. 11/juil./2009 23:00
par lannoy
Salut a tous, voila je veut crée une fenêtre pendant X temps avec une barre de chargement mais le problème est que sa va trop vite je voudrais que ça prenne environ 8 sec pour que la barre se remplisse et que la fenêtre se ferme ensuite voila mon code

Code : Tout sélectionner

Enumeration
#FenetreDeDepart
EndEnumeration

OpenWindow(#fenetreDeDepart,0,0,500,200,"ADG-SCORE",#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_BorderLess)
 StickyWindow(#fenetreDeDepart , 1)
 ProgressBarGadget(0,  0, 180, 500,  20, 0, 100)

SetWindowColor(#fenetreDeDepart,RGB(159, 184, 253))
chiffre = 0

Repeat

chiffre+1
event = WindowEvent()
SetGadgetState(0,chiffre)

If chiffre = 100
    CloseWindow(#fenetreDeDepart)
 EndIf 
Until event = #PB_Event_CloseWindow 
Merci de votre aide


PS: je veut faire un peut comme quand on ouvre toshop gimp ou DW, truc dans ce genre quoi

Publié : sam. 11/juil./2009 23:17
par Backup
..............

Publié : sam. 11/juil./2009 23:30
par lannoy
trop cool merci, tu peut m'expliqué stp ce que tu as fait


EDIT j'avais pas vue les commentaires merci beaucoup


PS: tu as vue mon topic sur les expressions reguliére ? Savoir si c'est possible merci

Publié : sam. 11/juil./2009 23:48
par Jacobus
Juste un exemple avec compteur incrémentiel.
Le delay() est pour l'exemple, mais le timer est mieux.

Code : Tout sélectionner

Enumeration 
#FenetreDeDepart 
EndEnumeration 

If OpenWindow(#fenetreDeDepart,0,0,500,200,"ADG-SCORE",#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_BorderLess)  
 SetWindowColor(#fenetreDeDepart,RGB(159, 184, 253))
 StickyWindow(#fenetreDeDepart , 1)
  TextGadget(0,10,160,480,15,"")
  SetGadgetColor(0,#PB_Gadget_BackColor,RGB(159, 184, 253))
  ProgressBarGadget(1,  0, 180, 500,  20, 0, 100) 
EndIf

chiffre = 0  
  For a = 0 To 99 ; barre complète
    chiffre = chiffre+1 ; incrément
     SetGadgetState(1,chiffre)
     SetGadgetText(0,"Compteur de progression: "+Str(chiffre)+" %")
   Delay(100) ; 100 millisecondes / il vaut mieux utiliser un timer, le Delay() bloque tout.
  Next a  

Repeat 
 Event = WaitWindowEvent()
  Select Event
   Case #PB_Event_Gadget 
      Select EventGadget()
           
      EndSelect
  EndSelect      
Until Event = #PB_Event_CloseWindow
End