Loulou 54 wrote:Le but étant de laisser s'écouler un certain temps après un affichage, c'est tout.
Attention ... rappelle toi que tu n'es pas maître du code exécutif. Rappelle toi que tu incarne un ouvrier dans une usine à la chaîne. Cela signifie que tu ne peux pas mettre de delay comme on le faisait avant en séquentiel. Si tu retardes pendant ton tour, te retardes toute la chaîne, donc tu figes la calculette. Dans certains cas tu peux donc la bloquer.
Cela a un autre problème (que l'on rencontre surtout lors de la création de jeux) et qu'on ne pense pas. Les données extérieures ne pourront pas changer pendant un delay bannal. En effet, tu n'as pas laissé ton tour au FrameWork de continuer à boucler.
Comme le dit Choco, une condition dans le code, un timer qui active la condition et c'est réglé (ne pas oublier un platform.window:invalidate() s'il s'agit du on.paint(gc) ). Seulement, si c'est pour faire plusieurs fois, autant oublier.
Dans une autre optique que je n'ai pas expérimentée mais que Jim Bauwen a testée avec succès c'est l'utilisation de co-routines. A voir.