Comment simplifier mon code?

Résolu
cs_athlon64 Messages postés 7 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 28 janvier 2008 - 13 janv. 2008 à 01:32
cs_athlon64 Messages postés 7 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 28 janvier 2008 - 13 janv. 2008 à 02:12
Bonjour,

Je suis débutant en vb6 et je me retrouve bloqué dans l'avancement de mon projet parce que je ne sais pas comment simplifier mon code.
je vais essayer de vous expliquez ce que j'aimerais bien peut être pourriez-vous m'aider ?
En faite j'ai plusieurs picturebox nommée img1 , img2 , img3 ... et il faudrait à l'aide d'un timer qu'il m'affiche dans une des picturebox une image déja présente dans une autre picturebox nommée "imagebase" par exemple mais pas dans n'importe qu'elle picturebox. Je dispose d'une variable qui a comme valeur 1 au départ , donc quand la variable à la valeur 1 il faudrait qu'il mette la même image que dans " imagebase" dans "img1" , si la variable à la valeur 2 qu'il la mette dans "img2" et aisin de suite...

Voila comment je pensais coder tout ça dans le timer :

Private Sub Timer1_Timer()
If var > 0 then
img & var.picture ? = imagebase.picture  ( je sais c'est ridicule mais j'vois pas comment exprimer ça ^^" )
end if
End Sub

Sinon à la barbare je peux aussi faire ...

Private Sub Timer1_Timer()
If var = 1 then
img1.picture = imagebase.picture
ElseIf var = 2 then
img2.picture = imagebase.picture
ElseIf var = 3 then
img3.picture = imagebase.picture
ElseIf ... 

Mais vu le nombre de picturebox que j'ai , j'vais y passer la nuit. =/

2 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
13 janv. 2008 à 01:58
Salut
Mauvaise technique : Quand tu as des objets ressemblants, il faut créer un tableau d'objet simplement en les indexant.
Tu crées le premier PictureBox
Tu vas dans ses propriétés mettre son index à 0 (les index commencent à zéro - y penser quand ta variable vaudra 1, il faudra penser à retirer 1 pour faire 0)
Dans l'environnement graphique de VB6, tu copie cet objet et tu le dupliques (presque) autant de fois que tu veux.
Ensuite, côté programme, il te suffit de choisir l'objet grace à son index :
   maPictureBox(Var - 1).Image = ImageBase.Picture

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
3
cs_athlon64 Messages postés 7 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 28 janvier 2008
13 janv. 2008 à 02:12
Merci beaucoups Jack , je ne savais pas du tout à quoi servait les index. Je tente d'apprendre par moi même alors je me débrouille comme je peux. ^^

Tout fonctionne maintenant , encore merci et bonne nuit. =)
0
Rejoignez-nous