Page 1 sur 1

Rafraichir un WebGadget automatiquement [RESOLU]

Publié : lun. 24/août/2009 11:57
par MetalOS
Salut tous le monde, voila j'aimerais pouvoir rafraichir un WebGadget automatiquement toutes les x secondes.

Je c que la commande

Code : Tout sélectionner

SetGadgetState(#Gadget, #PB_Web_Refresh)
permet de rafraichir le WebGadget. Je pensais utiliser une boucle for next avec un Delay() mais je ne sais pas comment le mettre en place.

Publié : lun. 24/août/2009 13:36
par MLD
Bonjour MetalOS
regarde ceci. c'est une solution

Code : Tout sélectionner

;mld le 24-08-2009
Procedure TimerProc(hwnd.l, uMsg.l, idEvent.l, dwTime.l) ;timer
 Select uMsg 
  Case #WM_TIMER 
   Select idEvent 
    Case 1 
     SetGadgetState(#Gadget, #PB_Web_Refresh)   
  EndSelect 
 EndProcedure 
SetTimer_ (Handle, 1, 5500, @TimerProc()) ; tu lance avec ceci
; Timer 5500 est le nombre de milliseconde, Handle celui de la fenêtre (expl:  Handle = WindowID (#Window_0) ;Handle de la fenêtre)
; ton programe ne sera pas arrêter pendant le rafraichissement 

Bonne journée Michel

Publié : lun. 24/août/2009 14:03
par Backup
une petite recherche sur le forum t'aurai aidé !!

c'est un peu pour cette raison que je prends ma retraite

répéter toujours encore et encore , les memes choses ! :?

les mecs, veulent programmer , mais ne savent même pas se servir
d'un forum !!

de plus non content de trouver pleins d'exemples sur le forum a propos des timers...
il existe meme un TUTO rien que pour ça !!


puré, c'est les vacances, c'est peut etre pour ça, que j'ai plus la patience :lol:

Publié : lun. 24/août/2009 15:06
par MetalOS
T gentil Dobro mais si le forum donnais de bon résultats au niveau de la recherche au départ je ne poserais pas cette question.

Au lieu de perdre ta patience à t'énerver et à ecrire des trucs de vieux sénile :lol: :lol: :lol: :lol: aide moi.

Et hors de question pour ta retraite :twisted: t'en n'est ou toi!!!!!! Tu crois que tu peut te barrer comme ça!!!!!!

J' Hallucine là...... 8O 8O 8O 8O

Merci MLD pour ta réponse.

Publié : lun. 24/août/2009 15:13
par MetalOS
Vla qu'il ce met à faire du zel celui-là :twisted: :twisted: :twisted: :twisted:

désoler Dobro je rigole.. pas la tête pas la tête...

Publié : lun. 24/août/2009 15:17
par Anonyme
14 °eme resultat d'une recherche de "timer" dans la section débutant :

http://www.purebasic.fr/french/viewtopi ... ight=timer

:D

Publié : lun. 24/août/2009 15:58
par MetalOS
Merci de m'aider Cpl.Bator :lol: :lol: :lol: :lol:

J'aime bien taquiner le vieux Futur retraité :lol:

Merci les gars je ne savais pas que les Timer servais à ca, sans le bon mot la recherche est inutile effectivement.

Publié : lun. 24/août/2009 18:23
par gansta93
En effet c'est une solution... après ce qui est bien c'est que la 4.40 gère les timers en natif si j'ai bien saisi.

Faudrait que je me mette au travail pour ajouter au tuto un code avec les fonctions natives de Pure, à moins que je sois pris de vitesse. :lol:

Publié : lun. 24/août/2009 18:58
par Geo Trouvpatou
Y me semble avoir compris la même chose.

Parce que si je ne dis pas de bêtises (ça me changerais), le delay() est bloquant contrairement à un timer.

Bye.

Publié : lun. 24/août/2009 19:12
par zaphod
un exemple de timer donné avec les exemples de la 4.40

Code : Tout sélectionner


;
;  Example for timers and StatusBarProgress()                      
; 

#Window = 0
#StatusBar = 0

Enumeration
  #Timer1
  #Timer2
EndEnumeration

If OpenWindow(#Window, 0, 0, 400, 200, "Timer example", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
  CreateStatusBar(#StatusBar, WindowID(#Window))
  AddStatusBarField(200)
  AddStatusBarField(200)

  AddWindowTimer(#Window, #Timer1, 250)
  AddWindowTimer(#Window, #Timer2, 1000)
  
  Count1 = 0
  Count2 = 0

  Repeat
    Event = WaitWindowEvent()
    
    If Event = #PB_Event_Timer
      Select EventTimer()
      
        Case #Timer1
          Count1 + 5
          If Count1 > 100
            Count1 = 0
          EndIf          
          StatusBarProgress(#StatusBar, 0, Count1, #PB_StatusBar_BorderLess, 0, 100)
        
        Case #Timer2
          Count2 + 5
          If Count2 > 100
            Count2 = 0
          EndIf
          StatusBarProgress(#StatusBar, 1, Count2, #PB_StatusBar_BorderLess, 0, 100)        
        
      EndSelect            
    EndIf
  Until Event = #PB_Event_CloseWindow

EndIf

Publié : mar. 25/août/2009 8:47
par MLD
Geo Trouvpatou a écrit :Y me semble avoir compris la même chose.

Parce que si je ne dis pas de bêtises (ça me changerais), le delay() est bloquant contrairement à un timer.

Bye.
Exact . Tu ne dis pas que des bêtises.
Bonne journée Michel

Publié : mar. 25/août/2009 14:05
par MetalOS
Merci pour vos réponses les gars. :wink: