For each object

Résolu
ozexperience Messages postés 12 Date d'inscription vendredi 14 avril 2006 Statut Membre Dernière intervention 6 août 2013 - 6 mai 2006 à 10:50
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 - 6 mai 2006 à 17:06
bonjours

jai creer une matrice de 5x7 points a laide dimage

a la base elles sont blanches et quand on click dessus elles deviennent noir (pour chaque image separement)

jaurait voulut tester la couleur de chaque image a laide dun bouton

seulement come il y a 35 images c un peu lourd de tester pour chaque

jaurait donc voulut faire un :

for each image

tester la couleur

next

merci davance

etudiant en elec et prog

7 réponses

Profil bloqué
6 mai 2006 à 14:08
Salut

Met tes 35 images dans un groupe de contrôles de Image(1) à Image(35)

for i% = 1 to 35
If image(i%).BackColor = vbWhite Then
'elle est blanche
else
'elle est noire
end if
next i%

GRENIER Alain[8D]
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
6 mai 2006 à 11:17
As tu essayé un :

Dim image as object

for each image In Image1
If image.BackColor = vbWhite Then
'elle est blanche
else
'elle est noire
end if
next image

_
Avant de poster dans le forum,
prière d'aller lire ceci :
http://www.codes-sources.com/reglement.aspx
<s></s>
0
ozexperience Messages postés 12 Date d'inscription vendredi 14 avril 2006 Statut Membre Dernière intervention 6 août 2013
6 mai 2006 à 12:42
merci de ta reponse mais ca ne marche pas

lobjet ne supporte pas la methode ou la propriete

le nom de mes image c'est : Image1 a Image35

donc pour chaque image je voudrait faire un test

dans une boucle car si je fais pour chaque image , le code devient lourd

merci
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
6 mai 2006 à 14:24
salut,
.... depuis quand l'objet image a une propriété BackColor ?!
tu lui mets une image noire ou blanche? tu as inversé image et picturebox ?
il faut préciser stp.

avec une picturebox çà donnerait :


Dim Ctrl As Object
'
For Each Ctrl In Me
If TypeOf Ctrl Is PictureBox Then
If Ctrl.BackColor = vbWhite Then
'elle est blanche
Else
'elle est noire
End If
End If
Next Ctrl


<small> Coloration
syntaxique automatique [AFCK]</small>


PCPT [AFCK]
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
6 mai 2006 à 14:27
Arf, oui, forcément : Backcolor n'est pas une propriété d'Image ;)

Donc en fait, faut passer par une autre propriétés pour savoir si l'image est blanche ou noire : passe par la propriété tag par exemple.

Lorsque l'utilisateur clique dessus, passe le tag à "blanc" ou "noir" puis teste la valeur du tag dans ta boucle, tout simplement.

_
Avant de poster dans le forum,
prière d'aller lire ceci :
http://www.codes-sources.com/reglement.aspx
<s></s>
0
ozexperience Messages postés 12 Date d'inscription vendredi 14 avril 2006 Statut Membre Dernière intervention 6 août 2013
6 mai 2006 à 16:00
salut

merci pour vos reponse ca fais vraiment plaisir

mais g tj un prob car alain ta reponse me convenai parfaitement mais
seulement je programme sous excel car je nest pas vb et donc il nest
pas possible de faire des groupe de controle

quand je renome une image sous le mm nom qune autre il me dit nom ambigu et c tous g pas le choix

donc tj en suspant

encore merci pour vos reponse si rapide
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
6 mai 2006 à 17:06
Bah si tu peux pas faire de groupe de contrôle, alors faut utiliser la méthode de PCPT : parcourir tout les controls de ta feuille, et tester s'il s'agit d'une image ou non, et tester le nom de celle-ci avant d'enfin pouvoir tester la couleur stockée dans le tag.

Du coup, une simple boucle For i = 0 to 35 ne sera pas adaptée.

_
Avant de poster dans le forum,
prière d'aller lire ceci :
http://www.codes-sources.com/reglement.aspx
<s></s>
0
Rejoignez-nous