Airel35
Messages postés16Date d'inscriptionmercredi 16 avril 2008StatutMembreDernière intervention13 février 2009
-
18 juin 2008 à 22:51
LIBRE_MAX
Messages postés1402Date d'inscriptionmardi 1 mai 2007StatutMembreDernière intervention 7 octobre 2012
-
19 juin 2008 à 01:10
Bonjour,
Voilà, comme c'est dit dans le titre j'ai un léger problème avec
VB6... enfin, ce n'est pas vraiment un problème mais une lacune de ma
part.
En fait je viens de découvrir les tableaux de contrôle car j'ai un Form où il y à des centaine de picture box.
Donc y'a un moment où VB6 m'a chi** dans les pattes en me disant que je dépassais le nombre maximum... à ma grande surprise.
J'ai donc chercher comment faire, et je suis tomber sur les tableaux de contrôle.
Ca marche très bien MAIS :
J'ai 20 lignes de picture box et chaque ligne comporte 22 picture box.
Pour se repérer chaque picture porte porte le nom suivant :
image <n° de ligne> (N° image)
Exemple : Pour l'image 4 de la ligne 3 :
image3(4)
Et je veux que lorsque mon form se charge, toutes ces picture box charge la même image.
Si je n'avais eu qu'une seule ligne c'était ultra simple, je faisait :
For nb = 1 to 22
------ Let me.image1(nb).picture = 'image a charger'
Next nb
Mais je voudrais imbriquer 2 boucle For pour faire 20 fois les 22, une sorte de :
Airel35
Messages postés16Date d'inscriptionmercredi 16 avril 2008StatutMembreDernière intervention13 février 2009 18 juin 2008 à 23:20
Nan ben j'ai rien dit je viens de trouver... ça fait 2heures que je tente des trucs, et là j'ai une idée... j'me dit "c'est pas ça quand même, c'est trop simple." et bingo ça marche.
J'ai pas l'air d'un con du coup.
Si ça peut aider (mais bon maintenant que je vois la solution, j'me demande qui à part moi n'y arriverai pas... ) :
For nb1 = 1 To 20
For nb2 = 0 To 22
Let ligne = "image" & nb1
Let Me.Controls(ligne)(nb2).Picture = LoadPicture(Dossier & Fichier)
Next nb2
Next nb1
Voilà, désolé.
Si un modérateur passe dans le coin, qu'il supprime ce sujet inutile.
cs_lermite222
Messages postés492Date d'inscriptionjeudi 5 avril 2007StatutMembreDernière intervention 2 juillet 20124 18 juin 2008 à 23:37
Bonjour,
Je ne crois pas qu'il est possible de sélectionner un contrôle d'après une variable pour le nom
Mais il est possible de mettre 440 contrôles avec des index de 1 à 440
et lorsque tu veux sélectionner un ligne tu commence a (Ligne x 22)
A+
LIBRE_MAX
Messages postés1402Date d'inscriptionmardi 1 mai 2007StatutMembreDernière intervention 7 octobre 20126 19 juin 2008 à 01:05
Salut,
ça marche dans ton cas peut être, mais pas toujours vrai !
Si j' ai un Label3(5), ça bloquera au niveau de
Let Me.Controls(ligne)(nb2).Picture = LoadPicture(Dossier & Fichier)
C' est pourquoi il faudra ajouter un test sur le type du control.
If TypeOf Me.Controls(ligne)(nb2) Is Image Then
Let ligne = "image" & nb1
Let Me.Controls(ligne)(nb2).Picture = LoadPicture(Dossier & Fichier)
End If
<hr />... Y'en a même qui disent qu'ils l'ont vu voler.
Vous n’avez pas trouvé la réponse que vous recherchez ?