AddWindowTimer()

Syntaxe

AddWindowTimer(#Fenetre, Minuteur, Temps)
Description
Ajoute un nouveau minuteur à une fenêtre.

Un minuteur a pour fonction de générer un évènement de type #PB_Event_Timer tous les 'Temps' millisecondes.

Arguments

#Fenetre La fenêtre à utiliser.
Minuteur Le numéro d'identification du minuteur.

Ce numéro sera renvoyé par EventTimer() lors d'un évènement de type #PB_Event_Timer.
Temps Temps écoulé, en millisecondes, entre deux évènements #PB_Event_Timer events.

Valeur de retour

Aucune.

Remarques

Un minuteur est toujours lié à une fenêtre et sera supprimé avec la fermeture de la fenêtre.

Plusieurs minuteurs peuvent fonctionner en même temps dans une fenêtre.
De plus, des minuteurs actifs sur différentes fenêtres peuvent avoir le même numéro.

Les évènements 'minuteur' ne seront générés que si aucun autre évènement ne doit être traité (les minuteurs ont une priorité basse). Cela implique qu'ils sont relativement peu précis, et que la durée entre deux évènements du même minuteur peut varier. Ils n'ont pas pour vocation à être utilisés pour de la précision, mais plutôt pour effectuer des tâches périodiques comme par exemple la mise à jour d'un gadget.

Pour retirer un minuteur, il faut utiliser RemoveWindowTimer().

Pour modifier la durée de la minuterie, il faut d'abord supprimer le minuteur, puis ajouter ce même minuteur avec une autre valeur de temps:
    RemoveWindowTimer(#Fenetre, Timer0)
    AddWindowTimer(#Fenetre, Timer0, NouvelleValeur)

Exemple

  If OpenWindow(0, 0, 0, 400, 100, "Exemple Minuteur", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    ProgressBarGadget(0, 10, 10, 380, 20, 0, 100)
    
    ; Ajout du minuteur n°123 dans la fenêtre 0 qui se déclenchera toutes les 250 ms
    AddWindowTimer(0, 123, 250)
    
    Value = 0
    Repeat
      Event = WaitWindowEvent()
      
      If Event = #PB_Event_Timer And EventTimer() = 123
        Value = (Value + 5) % 100
        SetGadgetState(0, Value)
      EndIf    
      
    Until Event = #PB_Event_CloseWindow
  EndIf

Voir aussi

RemoveWindowTimer(), EventTimer()

OS Supportés

Tous

<- AddKeyboardShortcut() - Window Index - BindEvent() ->