Page 1 sur 1
[v4] WaitWindowEvent() + Ecran fenêtré = application gelée
Publié : sam. 03/mars/2007 16:39
par Gratteur
Lorsque l'on utilise un écran en mode fenetré combiné à un WaitWindowEvent(), au bout d'un certain temps d'inactivité (10 à 15 minutes max) la fenetre se gele. Pour éviter ceci, il faut ajouter un delay dans le WaitWindowEvent()
ensuite si le event = 0 redessiner ce qu'il y a à l'écran.
Publié : sam. 03/mars/2007 20:33
par Patrick88
remplace le waitwindowevent par windowevent
exemple :
Code : Tout sélectionner
Repeat
Repeat
Event = WindowEvent()
Select Event
Case #PB_Event_Gadget
Case #PB_Event_CloseWindow
End
EndSelect
Until Event = 0
FlipBuffers()
;; ce que tu veux redessiner
if startdrawing(screenoutput())
;; seulement si tu utilise des box, line, drawtext...
....
endif
;; s'il s'agit d'un sprite pas besoin de startdrawing
displaysprite(...)
ExamineKeyboard()
ExamineMouse()
Delay(1)
Until KeyboardPushed(#PB_Key_Return)
Publié : dim. 04/mars/2007 12:14
par Gratteur
Le but est justement de concerver le waitwindowevent() pour ne pas avoir a s'occuper du "raffraichissement" des gadgets et pour laisser aux autres programmes un maximum de temps processeur.
Il faudrait au minimum signaler ce problème de freeze dans la doc.