Image aléatoire dans une picturebox

Résolu
Jojo092
Messages postés
137
Date d'inscription
samedi 24 septembre 2005
Statut
Membre
Dernière intervention
12 avril 2013
- 22 juin 2007 à 16:47
Lutinore
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 octobre 2012
- 25 juin 2007 à 12:38
Bonjour à tous,

et oui, j'ai en core un petit problème à vous exposer... Donc voilà j'ai une "picturebox" et une "imageList" avec uen collection d'images. Mon but serait de faire passer dans la picturebox une image aléatoirement (donc que je ne décide pas par moi-même), pour toutes les minutes, par exemple.
Est-ce-qu'il y a possibilité de coder le "shuffle", si on peut dire ca comme ca, et si oui, comment??? Merci beaucoup par avance!! ^^

3 réponses

Lutinore
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 octobre 2012
42
25 juin 2007 à 12:38
C'est juste que tu n'as pas de fichier nommés 01.jpg, 02.jpg .. dans le répertoire de l'éxecutable, mets le chemin en entier de tes images.
3
Lutinore
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 octobre 2012
42
23 juin 2007 à 01:57
Salut, avec la classe Timer et la classe Random..

public partial class Form1 : Form
{
    private Random rand = new Random( ( int )DateTime.Now.Ticks );


    public Form1( )
    {
        InitializeComponent( );


        ImageList il = new ImageList( );
        il.ImageSize = new Size( 256, 256 );
        il.ColorDepth = ColorDepth.Depth32Bit;
        il.Images.AddRange
        (
            new Bitmap[ ]
            {
                new Bitmap( "01.jpg" ),
                new Bitmap( "02.jpg" ),
                new Bitmap( "03.jpg" ),
                new Bitmap( "04.jpg" )
            }
        );


        PictureBox pb = new PictureBox( );
        pb.Size = il.ImageSize;
        pb.Parent = this;


        Timer t = new Timer( );
        t.Interval = 1000; // Pour l'exemple.
        t.Tick += delegate
        {
            pb.Image = il.Images[ rand.Next( 0, il.Images.Count ) ];
        };
        t.Start( );
    }
}
1
Jojo092
Messages postés
137
Date d'inscription
samedi 24 septembre 2005
Statut
Membre
Dernière intervention
12 avril 2013

25 juin 2007 à 10:54
Bonjour,

alors j'ai testé ce que tu m'as dit, et lorsque je compile, aucune erreur, mais quand j'exécute l'application, j'ai le débogueur qui se position sur ce bloc :

il.Images.AddRange
(
        new Bitmap[ ]
        {
            new Bitmap( "01.jpg" ),
            new Bitmap( "02.jpg" ),
            new Bitmap( "03.jpg" ),
            new Bitmap( "04.jpg" )
        }
);
et ca me met cette erreur : Le paramètre n'est pas valide... Un message qui ne m'apporte pas d'aide sur le problème... Enfon bref, merci quand même pour m'avoir donné un coup de main.
0