Je voudrais juste dire ceci :
Lorsque j'étais un débutant (aucun forum n'existait) , je m'efforçais de sérier les problèmes et les traitais un par un.
Qu'aurais-je à l'époque pensé et fait --->>
j'aurais mis de côté l'aspect déplacement d'image pour me consacrer à la seule étude du mécanisme d'un "timer".
Car il s'agit finalement de quoi, sinon d'exécuter un code à une fréquence déterminée ?
Et pour simplifier encore, j'aurais commencé (dans un premier temps) par une seule action : l'avancement d'un compteur, par exemple, à l'aide de la méthode Ontime
J'aurais fait dans un premier temps déclencher au clic d'un bouton, clic qui aurait appelé par la méthode Ontime, une procédure avançant de une unité ce compteur, procédure qui se serait rappelée elle-même jusqu'à obtenir la limite fixée pour ce compteur.
Dans un second temps et en prévision d'une procédure plus complexe d'avancement de 2 compteurs, j'aurais (mais toujours avec un seul compteur)
- déclaré une variable publique Go1 et :
- au clic sur le bouton, j'aurais mis à True GO1 et appelé la procédure par ontime
- au sein de ma procédure,
----- j'aurais écris que si GO1 = True, ma procédure se rappelait elle-même, sinon non
----- j'aurais mis GO1 à False dés que mon compteur aurait atteint la limite fixée
Ah ! ceci étant maîtrisé (et seulement alors), j'aurais exercé mon "art" avec deux compteurs (et donc également deux booléennes : GO1 et GO2)
Quelles modifications aurais-je apporté à ma procédure précédente ? --->>
tout bête :
- sortie de la procédure si à la fois G1 = False et GO2 = False
- je n'aurais avancé chaque compteur, que si (pour le 1er) GO1 = true et si (pour le second) GO2 = true.
Voilà. Commence par ce genre d'exercice salutaire. Le reste sera ensuite beaucoup moins ésotérique.
Partager