Bonsoir,
j'ai encore une question au sujet de mon projet memmory. Ce jeu consiste à retrouver les paires de cartes en les retournant deux à deux.
Dans mon projet, je clique sur la première carte, elle se retourne. En cliquant sur la deuxième carte, un message de confirmation du choix apparaît. En répondant oui, les deux cartes doivent apparaître pendant un certain temps (assez court) puis se retourner.
Cependant, avec le code que j'ai établi, des fois je vois les deux cartes pendant ce délai, des fois seule la première carte est seule à apparaître puis disparaître sans avoir vu la deuxième carte. Voici le bout de code qui pose problème:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 chemin = (ThisWorkbook.Path + "\" + CStr(TableauCartes(Carte)) + ".bmp") TabImages(Carte).Picture = LoadPicture(chemin) TabImages(Carte).BringToFront ' force le rafraichissement de l'image TabImages(Carte).Refresh TabImages(Carte).Repaint (0) For j = 1 To 25 Sleep (260) DoEvents Next
Avant la boucle correspondant au temps où l'utilisateur peut voir les deux cartes, j'avais initialement placé BringToFront. Ensuite, on m'a dit qu'il fallait utilisé refresh ou repaint. Ceci s'est révélé être sans succès. J'ai alors laissé les trois dans le code.
Pourriez-vous me dire comment faire pour que dans un délai de 4 secondes les deux cartes soient visibles et se retournent si elles ne sont pas identiques (sans utiliser de Timer puisque en vba pour excel il faut recréer un timer et cela ne me plait pas trop)?
Partager