Utilisation de 'System.Windows.Forms.Control'

Résolu
raffika
Messages postés
269
Date d'inscription
dimanche 31 mai 2009
Statut
Membre
Dernière intervention
12 mars 2011
- 30 mai 2010 à 16:18
raffika
Messages postés
269
Date d'inscription
dimanche 31 mai 2009
Statut
Membre
Dernière intervention
12 mars 2011
- 7 juin 2010 à 20:51
Bonjour,
je suis en train de faire un programme qui
utilise tout un tableau de picturebox, nommées :
PictureboxX1Y1
PictureboxX1Y2, avec X ou Y utilisées comme coordonnées...
J'ai vu il y a quelques temps que on ponvait utiliser
Me.Control( pour accéder aux contrôles dynamiquement mais
je n'arrive pas à utiliser l'instruction Load avec picturebox
déterminée par son nom et X et Y,
par exemple si je met dans une boucle :

For X = 1 To 18
For Y = 1 To 4

Dim returnValue As Color = Controls("PictureBoxy" & Y & "x" & X).BackColor ''Prend la couleur de la case 1 dans reurnvalue


next:next

Ca marche mais si je met dans ma boucle :

Controls("PictureBoxy" & Y & "x" & X).Load("Fichierimage.bmp")

''Ca ne marche pas et j'ai une erreur :

'Load' n'est pas un membre de 'System.Windows.Forms.Control'


Savez-vous si il y a un moyen d'utiliser .Load
avec un nom de controle contenu dans une variable ?

5 réponses

cs_casy
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
30 mai 2010 à 16:34
Controls("nom") te renvoie le contrôle portant ce nom dans la collection Controls.
Ce contrôle, tu dois d'abords dire que c'est une picturebox pour pouvoir ensuite utiliser les méthodes des picturebox :

Version condensée :
DirectCast(Controls("PictureBoxy" & Y & "x" & X),PictureBox).Load("Fichierimage.bmp")

Version détaillée :
Dim pb as PictureBox = DirectCast(Controls("PictureBoxy" & Y & "x" & X),PictureBox)
pb.Load("Fichierimage.bmp")


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
3
Utilisateur anonyme
31 mai 2010 à 21:02
ah oui j'aurai du ecrire :
... = Image.FromFile("blabla.bmp")
bonne soirée.
3
Utilisateur anonyme
30 mai 2010 à 16:31
bonsoir,
il existe la propriété BackGroundImage mais je ne sais pas si cela correspond a ce que tu cherche.
Controls("PictureBoxy" & Y & "x" & X).BackGroundImage = "image.bmp"
0
raffika
Messages postés
269
Date d'inscription
dimanche 31 mai 2009
Statut
Membre
Dernière intervention
12 mars 2011

30 mai 2010 à 16:46
Merci casy ça marche bien là...
Quand j'aurais fini mon programme
j'y mettrai la source ici...
Sinon, banana32 , j'ai :
Une valeur de type 'String' ne peut pas être convertie en 'System.Drawing.Image'.
Mais merci quand même
a+
0

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

Posez votre question
raffika
Messages postés
269
Date d'inscription
dimanche 31 mai 2009
Statut
Membre
Dernière intervention
12 mars 2011

7 juin 2010 à 20:51
Ah oui ça marche aussi,
merci à vous deux ;)
0