cs_benji78
Messages postés41Date d'inscriptionlundi 19 décembre 2005StatutMembreDernière intervention25 novembre 2008
-
22 nov. 2008 à 13:58
cs_benji78
Messages postés41Date d'inscriptionlundi 19 décembre 2005StatutMembreDernière intervention25 novembre 2008
-
25 nov. 2008 à 19:46
Bonjour à tous, je réalise une application bibliothèque d'image.
Dans cette application il y a aura plus de 1800 images, suivant le filtre de recherche sélectionné par l'utilisateur, des images s'ajouterons dans un ComboBox, où l'utilisateur pourra ensuite sélectionner l'image à visualiser dans une PictureBox.
Afin d'éviter de rentrer pour chaque image se trouvant classés dans des dossier spécifique, j'aimerais créer un code qui se chargerais de mettre dans le ComboBox les fichiers.
Malheureusement quoi que je fasse je tombe sur une erreure indiquant qu'il est impossible de convertir une donnée de type String en System.Image.Drawing, se qui est logique...
Voici le code que j'utilisais jusqu'à présent :
Dim dirInfo
As
New System.IO.DirectoryInfo(
"C:\Documents and Settings\Benjamin\Bureau\Chipsets Triés")
Dim file
As Image
Dim files()
As
System.IO.FileInfo = dirInfo.GetFiles(
"*.png")
If (files
IsNot
Nothing)
Then
For
Each file
In files
ComboBoxChipsets.Items.Add(file)
cs_benji78
Messages postés41Date d'inscriptionlundi 19 décembre 2005StatutMembreDernière intervention25 novembre 2008 23 nov. 2008 à 13:19
Bonjour à tous, il me semble avoir trouvé la solution à mon problème, je ne sais si c'est la meilleure, mais elle semble me convenir, donc je vous la soumet :).
PictureBoxChipset.Image = Image.FromFile(ComboBoxChipsets.SelectedItem) 'Pour l'affichage de l'image sélectionnée.
'Insertion des images dans le ComboBox :
Dim
dirInfo
As
New System.IO.DirectoryInfo(
"Répertoire")
Dim file
As
Object
Dim files()
As
Object = dirInfo.GetFiles(
"*.extension de l'image")
If (files
IsNot
Nothing)
Then
For
Each file
In files
ComboBoxChipsets.Items.Add(file.Fullname.ToString)
Next
End
If
Si vous voyez des amélioration possibles, merci de le signaler :).
a++
cs_benji78
Messages postés41Date d'inscriptionlundi 19 décembre 2005StatutMembreDernière intervention25 novembre 2008 24 nov. 2008 à 20:42
En faite comm ej l'ai dit dans l'introduction à mon problème je souhaite créer une bibliothèque d'image.
Et pour importer ces images dans le ComboBox, je les ai au préalable mises dans un dossier stocké dans un endroit sur mon disque dur.
Se que j'aimerais faire c'est d'associer le dossier contenant toutes mes images à l'installeur plutôt que de les insérer de façon non triés dans les ressources de mon projet.
Enfin j'ai pensé que c'était une solution plutôt pas mal, mais il y a peut-être encore mieux :).
a++
Kevin.Ory
Messages postés840Date d'inscriptionmercredi 22 octobre 2003StatutMembreDernière intervention 7 janvier 200911 24 nov. 2008 à 22:55
Tes images tu les laisse dans ton dossier sur ton disque dur et tu y accède depuis ton soft, je vois pas trop ce que tu voudrais faire dans l'installeur...
Si ce que tu souhaite est une invite à l'utilisateur qui lui permet de choisir le dossier dans lequel sont stocké les photos, n'essaie pas de faire ça dans l'installeur mais au 1er lancement de ton soft, comme le font par exemple les lecteurs multimédia lorsque ils proposent d'importer les mp3 et autre fichiers audios dans la bibliothèque.
Tu veux pas ajouter des GB d'images dans les ressources de ton projet quand même? A la limite ta bibliothèque d'image (des liens vers les fichiers), mais je ne conseil pas d'en créer une si elle n'est pas absolument nécaissaire. L'accès direct au fichiers images et à leurs tag pour avoir plus d'info suffit dans la plupart des cas. Mais en aucun cas il faut importer toutes les images dans les ressources du projet, ce n'est pas destiné à ça.
Sinon, je te conseil de faire ça dans un fichier extérieur (XML ou binaire) que tu peux stocker dans Application Data, ce qui permet de gérer les différents utilisateurs Windows séparément.
Mais je n'ai pas compris pourquoi tu parle d'insertion trié ou non trié. Des fichiers sont trié par dossiers, après si tu veux les trier par nom, date ou taille, cela ne se fait qu'à l'affichage...
cs_benji78
Messages postés41Date d'inscriptionlundi 19 décembre 2005StatutMembreDernière intervention25 novembre 2008 25 nov. 2008 à 19:46
Merci des informations, je pense avoir trouvé ma solution ;).
Pour se que tu n'as pas compris :
En faite dans ma bibilothèque de chipset j'importe les images depuis un dossier spécifique ou sont dedans toutes les images d'un certain type.
Alors que si je mettais les images dans les ressources celle-ci n'aurait pas été triée, et j'aurais peut-être due les importer une à une.