Bonjour,
J'ai fait un petit programme qui permet de regarder des photos et de leur appliquer des traitements basique. Mais j'ai quelques question de conception.
1. Pour le moment j'utilise une class qui contient mon image, sa taille et son état (en fonction des traitements). Donc lorsque j'ouvre une image je crée un nouvel objet de ma class, et les champs correspondant reçoivent les valeur. Chaque objet est alors placé dans un ArrayList pour pouvoir les faire défiler. J'aimerais savoir si il y a un meilleur moyen pour stocker les images en mémoire car si j'ouvre un répertoire qui contient 100 images ca doit prendre des ressources énormes.
2. J'aimerais savoir comment faire une pause pour le diaporama avec les Threads. J'ai essayé en créant un objet Thread puis j'ai mit thread.sleep(1000) dans ma fonction diaporama mais la pause bloque tout le programme pendant 5 secondes puis mer end la main alors que j'aimerais une pause entre chaque image et que l'heure ne se bloque pas aussi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 class Photo { Bitmap img; string etatimg; bool flag; string size; }; Photo pt; //Instance de la class Photo ArrayList photo = new ArrayList(); //Liste qui va contenir toutes les photos selectionées private void bmOpen_Click(object sender, EventArgs e) { DialogResult dres = ofd.ShowDialog(); if (dres == DialogResult.OK) { //pBox.Image = new Bitmap(ofd.FileName); Bitmap bp; //Permet de récupérer les dimensions de la nouvelle image ajoutée dans la liste pt = new Photo((bp = new Bitmap(ofd.FileName)), "Normal", false, (bp.Width + "x" + bp.Height)); photo.Add(pt); //Ajoute l'image à la suite dans la liste if (inpBox == false) //Si aucune image dans la pBox { pBox.Image = pt.getImage(); //Affiche l'image dans la Picture Box tsEtatImage.Text = pt.getEtat(); //Affiche l'état de l'image tsDimension.Text = pt.getSize(); //Affiche les dimensions de l'image inpBox = true; //Indique qu'une image se trouve dans la pBox } } }
3.Est il possible d'appliquer un filtre pour une OpenFolderDialog() ??
Merci
Bonne soirée
Partager