Oppure

Loading
13/10/15 0:56
lupetto77
Ciao a tutti ho un problema,
Ho caricato delle immagini su un imageList e all'avvio del programma vorrei caricarle nelle pictureBox partendo dalla seconda alla decima.

Potete aiutarmi per favore?
Grazie in anticipo.

aaa
13/10/15 5:03
nessuno
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
13/10/15 6:41
TheDarkJuster
Cosa non capisci di quella risposta? E poi perchè non la hai citata? Che cosa funziona e cosa non funziona?
aaa
13/10/15 10:18
Thejuster
Se mostri qualcosa che hai scritto ti possiamo aiutare altrimenti ci e' impossibile capire dovr sbagli
mire.forumfree.it/ - Mire Engine
C# UI Designer
13/10/15 14:35
lupetto77
No non l'ho postato io li.
Siccome sono onesto è vero l'ho visto anch'io li, ma siccome devo fare una cosa del genere ma non riuscivo, ho provato anch'io il codice postato in quel sito prendendo spunto dai commenti.

Vi dico il mio problema devo caricare le immagini nelle varie pictureBox messe in un panel, poi con 2 button dovrei far scorrere le immagini verso destra o sinistra usando i button.

Il codice che ho provato finora è questo:
for (int immagine = 0; immagine < imageList2.Images.Count; immagine++)
            {
                foreach (Control ctrl in pnlScorrimento1.Controls)
                {
                    // panel1.Controls
                    if (ctrl is PictureBox)
                    {
                        (Controls["pictureBox" + (2 + immagine).ToString()] as PictureBox).Tag = immagine;

                        Image im = (Controls["pictureBox" + (2 + immagine).ToString()] as PictureBox).Image = imageList2.Images[immagine];
                        ctrl.BackgroundImage = im;
                    }
                }
            }





Ultima modifica effettuata da lupetto77 13/10/15 14:37
aaa
13/10/15 21:54
Thejuster
Definirei tutto questo come orrore e non come errore.
Non so' chi o dove hai preso questo sorgente ma e completamente sbagliato.

Partiamo dal fatto che appunto una ImageList e una lista di immagini.
Dove e possibile specificarne anche la dimensione delle immagini contenute.

Di norma, leggendo la tua richiesta io avrei optato per una cosa diversa.

Prima pero' partiamo dall'inizio ed andiamo un passo alla volta.
Hai detto che vuoi mostrarle nella pictureBox giusto?

In questo caso, quel codice che hai scritto fa tutto l'opposto di cio' che ti serve.

Quel codice cerca in tutti i controlli della form le pictureBox.
Che se corrispondono a quel nome imposta come Background l'immagine presa dalla lista
Nel ciclo for. Ma oltre ad essere stato scritto male e anche un metodo molto rozzo.

Quel codice dovrebbe essere cosi'.

int immagini = imagelist1.Images.Count;
Int conta = 0;

for(int i = 0; i < Controls.Count; i++)
{
If(Controls[i].GetType() == typeof(PictureBox))
{
Controls[i].BackgroundImage = Imagelist1.Images[conta+2];
Conta++;
}
}



L'ho scritto da cell e senza testare ma dovrebbe funzionare prova.

Oppure puoi usare il metodo del Paint e dividere meglio le immagini
Nelle giuste posizioni utilizzando una sola pictureBox. Cosa che consiglio
Vivamente di fare invece di utilizzare questo metodo.
mire.forumfree.it/ - Mire Engine
C# UI Designer
14/10/15 0:44
lupetto77
Ciao Thejuster e grazie per l'aiuto e la pazienza.

Non so se ho capito bene ho commentato il codice che ho scritto e usato il tuo, dimmi se è giusto?
Ma questa riga che hai scritto non viene usata o sbaglio?

int immagini = imagelist1.Images.Count;


Ho provato il tuo codice e il programma si avvia ma non vengono caricate le immagini.

Per il metodo Paint che mi hai suggerito ci proverò ma non ho mai usato tale metodo.
Ultima modifica effettuata da lupetto77 14/10/15 3:22
aaa
14/10/15 6:52
Thejuster
Si hai ragione.
All'inizio volevo usare il metodo del Draw direttamente sulla picturebox
Poi ho cambiato idea e ho dimenticato di togliere quella linea.
Si non serve puoi escluderla.

PS:
Ho testato il codice e funziona benissimo almeno da me.
Che errore ti da? O cosa succede?

Il metodo del paint sarebbe la scelta sicuramente migliore invece di avere 12 pictureBox
Per 12 Immagini. Te ne basterebbe una sola.
Poi alzo le mani. Dipende sempre da cosa si vuol ottenere.
Se provi a dirmi cosa vuoi fare ti posso consigliare come agire.
Ultima modifica effettuata da Thejuster 14/10/15 15:47
mire.forumfree.it/ - Mire Engine
C# UI Designer