help : indicer des picturebox

Le
Vincent
Bonjour,

Dans une fenetre j'ai 20 picturebox ( picturebox1 à picturebox20)

comment dans une boucle indicer les picturebox ?

du genre :

for(int i=1;i<21;i++)
{

Image = "img" + i.tostring() + ".gif"

pictureBox[i] = mon image

}

Merci

Vincent
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Gilles TOURREAU
Le #12189411
Le Fri, 13 Jul 2007 22:52:01 +0200, Vincent

Bonjour,

Dans une fenetre j'ai 20 picturebox ( picturebox1 à picturebox20)

comment dans une boucle indicer les picturebox ?

du genre :

for(int i=1;i<21;i++)
{

Image = "img" + i.tostring() + ".gif"

pictureBox[i] = mon image

}

Merci

Vincent





Le plus propre c'est de créer un tableau :

PictureBox[] tab;

tab = new PictureBox[20];


Si tes pictures box sont crées via le Designer tu dois les affecter à la
main :
tab[0] = picturebox1;
tab[1] = picturebox2;
...etc

Si maintenant tu les crées de façon dynamique :
for(int i=0; i<20; i++)
{
tab[i] = new PictureBox();
tab[i].Location = ...
tab[i].Size = ...
...
}


Maintenant tu peux boucler sur ce tableau sans problème.

Cordialement

--
Gilles TOURREAU


S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Vincent
Le #12189401
Merci,
Je cherche une technique pour jouer avec les indices car j'ai construit ma
fenetre avec visual studio.

pour le moment j'ai une ligne pour chaque picturebox, mais quand il y en
aura 150 ..... à chaque traitement se sera la galère :)



Vincent

"Gilles TOURREAU"
Le Fri, 13 Jul 2007 22:52:01 +0200, Vincent

Bonjour,

Dans une fenetre j'ai 20 picturebox ( picturebox1 à picturebox20)

comment dans une boucle indicer les picturebox ?

du genre :

for(int i=1;i<21;i++)
{

Image = "img" + i.tostring() + ".gif"

pictureBox[i] = mon image

}

Merci

Vincent





Le plus propre c'est de créer un tableau :

PictureBox[] tab;

tab = new PictureBox[20];


Si tes pictures box sont crées via le Designer tu dois les affecter à la
main :
tab[0] = picturebox1;
tab[1] = picturebox2;
...etc

Si maintenant tu les crées de façon dynamique :
for(int i=0; i<20; i++)
{
tab[i] = new PictureBox();
tab[i].Location = ...
tab[i].Size = ...
...
}


Maintenant tu peux boucler sur ce tableau sans problème.

Cordialement

--
Gilles TOURREAU


S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr


Fred
Le #12189391
Dans : news:,
Vincent disait :
Merci,
Je cherche une technique pour jouer avec les indices car j'ai
construit ma fenetre avec visual studio.



Dans ce cas utilise la collection Controls.
parent.Controls("picturebox" + i.ToString()).Image = ...

(parent est le contrôle qui contient les pictureBox)

--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Vincent
Le #12189381
Merci pour ta réponse,

Par parent tu veux dire du stryle MainForm.Controls ?
Ca ne marche pas, Control n'existe pas avec MainForm.
j'ai essayé this.Control( .... mais can em arche pas non plus
Je dois mal définir le "parent" ?

merci

Vincent


"Fred"
Dans : news:,
Vincent disait :
Merci,
Je cherche une technique pour jouer avec les indices car j'ai
construit ma fenetre avec visual studio.



Dans ce cas utilise la collection Controls.
parent.Controls("picturebox" + i.ToString()).Image = ...

(parent est le contrôle qui contient les pictureBox)

--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)


Fred
Le #12189371
Dans : news:,
Vincent disait :
Merci pour ta réponse,

Par parent tu veux dire du stryle MainForm.Controls ?



Oui,

Ca ne marche pas, Control n'existe pas avec MainForm.



Et Controls (avec un s) ?


--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Vincent
Le #12189361
c'est une coquille du post, j'ai bien mi Controls

"Fred"
Dans : news:,
Vincent disait :
Merci pour ta réponse,

Par parent tu veux dire du stryle MainForm.Controls ?



Oui,

Ca ne marche pas, Control n'existe pas avec MainForm.



Et Controls (avec un s) ?


--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)


Gilles TOURREAU
Le #12189351
Le Sat, 14 Jul 2007 13:57:43 +0200, Vincent

c'est une coquille du post, j'ai bien mi Controls

"Fred"
Dans : news:,
Vincent disait :
Merci pour ta réponse,

Par parent tu veux dire du stryle MainForm.Controls ?



Oui,

Ca ne marche pas, Control n'existe pas avec MainForm.



Et Controls (avec un s) ?


--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)







De quel type est ton MainForm ?

Cordialement

--
Gilles TOURREAU


S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Vincent
Le #12189341
public partial class MainForm : Form


public MainForm()

Voila le code de création de la fenêtre.



Si Je fais Main.Controls ... ca n marche pas, car il n'y a pas de "Controls"
à ce niveau

Donc :

Main.Controls("picturebox" + i.ToString()).Image = ne fonctionne pas.



Une idée ?



Merci

Vincent





"Gilles TOURREAU"
Le Sat, 14 Jul 2007 13:57:43 +0200, Vincent

c'est une coquille du post, j'ai bien mi Controls

"Fred"
Dans : news:,
Vincent disait :
Merci pour ta réponse,

Par parent tu veux dire du stryle MainForm.Controls ?



Oui,

Ca ne marche pas, Control n'existe pas avec MainForm.



Et Controls (avec un s) ?


--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)







De quel type est ton MainForm ?

Cordialement

--
Gilles TOURREAU


S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr


Vincent
Le #12189331
avec :
int i = 1;

this.Controls("pictureBox" + i.ToString()).Image = myimage;

j'ai le message :

'System.Windows.Forms.Control.Controls' est un 'propriété' mais est utilisé
comme un 'méthode' (CS0118)

vincent


"Vincent"

public partial class MainForm : Form


public MainForm()

Voila le code de création de la fenêtre.



Si Je fais Main.Controls ... ca n marche pas, car il n'y a pas de
"Controls" à ce niveau

Donc :

Main.Controls("picturebox" + i.ToString()).Image = ne fonctionne pas.



Une idée ?



Merci

Vincent





"Gilles TOURREAU" news:
Le Sat, 14 Jul 2007 13:57:43 +0200, Vincent

c'est une coquille du post, j'ai bien mi Controls

"Fred"
Dans : news:,
Vincent disait :
Merci pour ta réponse,

Par parent tu veux dire du stryle MainForm.Controls ?



Oui,

Ca ne marche pas, Control n'existe pas avec MainForm.



Et Controls (avec un s) ?


--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)







De quel type est ton MainForm ?

Cordialement

--
Gilles TOURREAU


S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr






Gilles TOURREAU
Le #12189311
Le Sun, 15 Jul 2007 10:37:30 +0200, Vincent

avec :
int i = 1;

this.Controls("pictureBox" + i.ToString()).Image = myimage;

j'ai le message :

'System.Windows.Forms.Control.Controls' est un 'propriété' mais est
utilisé
comme un 'méthode' (CS0118)

vincent




this.Controls["pictureBox" + i.ToString()].Image = myimage;

--
Gilles TOURREAU


S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Publicité
Poster une réponse
Anonyme