J'ai un probleme de comprehension avec les timers.
J'ai trouvé ce code en cherchant sur le forum :
Code : Tout sélectionner
Procedure TimerProc(hwnd.l, uMsg.l, idEvent.l, dwTime.l)
Select uMsg
Case #WM_TIMER
Select idEvent
Case 1
Debug "--------------------1 seconde"
; Ici, le code à executer toutes les secondes
Case 2
Debug "0.2 secondes"
; Ici, le code à executer toutes les 200 millisecondes
Case 3
Debug "-------------------------------------------3 secondes"
; Ici, le code à executer toutes les 3 secondes
EndSelect
EndSelect
EndProcedure
If OpenWindow (0, 100, 100, 100, 100, #PB_Window_SystemMenu , "" )
Handle = WindowID (0)
SetTimer_ (Handle, 1, 1000, @TimerProc()) ; envoie un evenement toutes les 1000 millisecondes
SetTimer_ (Handle, 2, 200, @TimerProc()) ; envoie un evenement toutes les 200 millisecondes
SetTimer_ (Handle, 3, 3000, @TimerProc()) ; envoie un evenement toutes les 3000 millisecondes
Repeat
Until WaitWindowEvent () = #PB_Event_CloseWindow
EndIf
Notament sur les argument de la procedure "TimerProc(hwnd.l, uMsg.l, idEvent.l, dwTime.l)" et sur l'utilité du @ de "SetTimer_ (Handle, 3, 3000, @TimerProc())".
Un grand merci a celui ou celle qui arrivera à m'expliquer tout ca
