Aidez moi pour charger une image aléatoire svp [Résolu]

Messages postés
22
Date d'inscription
mercredi 5 juillet 2006
Statut
Membre
Dernière intervention
2 janvier 2013
- - Dernière réponse : cs_rorox
Messages postés
22
Date d'inscription
mercredi 5 juillet 2006
Statut
Membre
Dernière intervention
2 janvier 2013
- 31 déc. 2012 à 20:09
Bonjour,
Je suis débutante et bloquée...

Je voudrais afficher dans un picturebox une image. Cette image est prise au hasard parmi plusieurs images dans mes ressources nommées "1.jpeg", "2.jpeg" etc jusqu'à 10 ou encore "1d.jpeg", "2d.jpeg" etc

Je suis sous visual 2008.
Quand je fais picturebox.image= My.Resources._8
ça fonctionne.
Mais ce que je voudrais, c'est utiliser une variable i qui prend une valeur aléatoire entre 1 et 10.
Pour i, j'y arrive.
Mais c'est pour l'utiliser ensuite : impossible de faire
picturebox.image= my.resources._ &i

J'ai essayé de créer une variable "chemin" de type string et de faire
chemin="my.resources._"&i
mais je ne peux pas faire picturebox.image=chemin car "une valeur de type string ne peut être convertie en 'system.drawng.image'

quand je déclare chemin en tant que system.drawng.image au lieu de string, c'est le contraire qui se passe et tjs erreur.

j'ai essayé picturebox.image = Image.FromFile(chemin)
mais ça me retourne une erreur quand je lance mon logiciel...

AU SECOURS !!
J'espère que vous pourrez vite m'aider car je suis vraiment bloquée :(

ps: j'ai posté ce post 2 fois car la 1ère fois je n'étais pas certaine d'être au bon endroit...
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
14570
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
21 octobre 2019
136
3
Merci
Bonjour,

http://stackoverflow.com/questions/1190729/vb-net-dynamically-select-image-from-my-resources

v----Signature--------v----------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 187 internautes nous ont dit merci ce mois-ci

Commenter la réponse de NHenry
Messages postés
3251
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
16 octobre 2019
46
3
Merci
Bonjour

Dim rnd As New Random
        Dim str1 As String = rnd.Next(1, 10).ToString
         Dim str2 As String = rnd.Next(1, 10).ToString & "d"
        Dim im As System.Drawing.Image
        im = DirectCast(My.Resources.ResourceManager.GetObject(str1), System.Drawing.Image)
'ou
  im = DirectCast(My.Resources.ResourceManager.GetObject(str2), System.Drawing.Image) 

        PictureBox1.Image = im
        PictureBox1.Size = im.Size

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 187 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_ShayW
0
Merci
Bonjour Rorox,

Utilises la propriété Load de la Picture_Box

Imaginons que tes images soient présentes dans le dossier c:\mes images et que tes fichiers sont nommées Image1.jpg, image2.jpg...

Tu déclares ta variable puis du procèdes de la sorte :
Dim i as integer
For I=1 to 10 ' boucle de comptage (tu peux passer ici ta valeur aléatoire
Dim MonImage as string = "c:\mes images" & "Image" & trim(str(i)) & ".jpg"
me.pictureBox.load(MonImage)
Next

Enfin tu arranges çà que comme tu le souhaites mais la solution est là !

@ Bientôt

jimbolion
Commenter la réponse de jimbolion
Messages postés
22
Date d'inscription
mercredi 5 juillet 2006
Statut
Membre
Dernière intervention
2 janvier 2013
1
0
Merci
Géniallissime!!!!

Merci beaucoup à NHenry et ShayW! C'est ce qu'il me fallait! Jme suis un peu galérée à cause d'un p.. de tiret que j'avais oublié mais j'y suis arrivée! :)
Merci merc merci pour votre réponse super et surtout RAPIDE!! :)
Au moins, j'y aurai passé la journée mais j'aurai réussi!!

Je remercie aussi jimbolion de ta réponse, mais je ne voulais justement pas passer par le chemin de MON disque dur puisque je souhaite utiliser mon logiciel sur d'autres ordis. C'est quand même sympa de ta part de m'avoir répondu, et aussi vite :)

Vive ce forum!
Bon réveillon à tous!

Rorox
Commenter la réponse de cs_rorox
Messages postés
22
Date d'inscription
mercredi 5 juillet 2006
Statut
Membre
Dernière intervention
2 janvier 2013
1
0
Merci
ps: je clique où pour le passer en "résolu" ?
Commenter la réponse de cs_rorox