moimael
Messages postés23Date d'inscriptionjeudi 28 décembre 2006StatutMembreDernière intervention27 août 2010
-
13 févr. 2007 à 20:04
moimael
Messages postés23Date d'inscriptionjeudi 28 décembre 2006StatutMembreDernière intervention27 août 2010
-
13 févr. 2007 à 23:08
Salut à tous,
Voila je travaille sur une petit
application(déjà disponible au téléchargement) de gestion du Twin (un
tel portable) et je viens de m'apercevoir d'un bug plutôt très gênant.
En effet, mon appli propose une gestion des images. Lorsque
je charge une image par le contrôle openfiledialog, son nom s'affiche
dans une listbox et on peut la visualiser dans une picturebox.
Le problème est que, quand je charge une image qui provient
d'un dossier différent de la précédente image, j'ai le droit à un
superbe message d'erreur m'indiquant que mon image ne peut pas être
trouvée.
Cela vient du fait qu'il recherche mon image dans le
dossier de la dernière image ouverte et non dans le dossier ou celle ci
se trouve.
J'espère que mon explication sera compréhensible.
J'ai essayé énormément de chose avant de poster sur le forum, comme les setcurrentdirectory et autre mais rien n'y fait.
En espérant que vous puissiez m'aider, merci.
La partie du code qui pose pb :
Dim image1 As Image
image1 = Image.FromFile(Path.GetFullPath(ListBox1.SelectedItem))
Julien237
Messages postés883Date d'inscriptionvendredi 3 novembre 2000StatutMembreDernière intervention 3 mars 20097 13 févr. 2007 à 20:45
Salut,
J'imagine que la listbox ne contient donc pas le chemin complet du fichier.
Pas de solutions miracles, il faut l'enregistrer quelque part...
Je te propose d'enregistrer les chemins de tes fichiers dans une liste de strings, et de n'utiliser la ListBox uniquement comme sortie (tu n'ira pas y lire d'informations, ci ce n'est l'index de l'élément sélectionné).
Donc :
'En global :
Dim Paths as New List(Of String)
'Là où tu ajoute une imageIf Not OpenFileDialog.ShowDialog() Windows.Forms.DialogResult.Cancel Then
Paths.Add(OpenFileDialog.Filename)
ListBox1.Items.Add(System.IO.Path.GetFileName(OpenFileDialog.Filename))
End If
'Ensuite pour charger l'image, il te suffit de faire
Dim image1 As Image
image1 = Image.FromFile(Paths(ListBox1.SelectedIndex))
moimael
Messages postés23Date d'inscriptionjeudi 28 décembre 2006StatutMembreDernière intervention27 août 2010 13 févr. 2007 à 23:08
Merci bcp de ta réponse, ca fonctionne parfaitement. Je savais bienqu'il fallait les stocker qq part ces chemins, j'avais essayer dans des fichiers textes mais la solutions était trop lourde et contraignante. Merci pour ton aide.