cs_PHILOUVB
Messages postés141Date d'inscriptionmardi 18 mars 2003StatutMembreDernière intervention 3 octobre 2010
-
3 oct. 2010 à 10:50
NHenry
Messages postés15123Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention20 mai 2024
-
3 oct. 2010 à 13:33
Bonjour à tous
Voici mon petit soucis
J'ai une dizaine de contrôle PictureBox que je vais appeler Pict1, Pict2...
Lorsque je fais un clic droit sur ce PictureBox, un menu contextuel s'ouvre.
A la suite des choix dans les différents menus, j'insère une image enregistrée dans My.Resources
Pour récupérer le nom du PictureBox concerné, j'ai donc créé une variable
Dim MonImage as PictureBox
Et au moment où je fais un clic droit, je récupère le PictureBox concerné
MonImage = Ctype(sender,picturebox)
Ce que je cherche à faire ensuite c'est à attribuer une image à ma variable
et ensuite à redonner au PictureBox de départ l'image contenu dans la variable MonImage
Mais là, je bloque, je me retrouve systématiquement avec un message d'erreur
J'ai essayer avec System.Drawing.Image ou avec FromBitmap, mais rien n'y fait
J'ai trouvé une solution de contournement en récupérant le nom de la variable au départ
Dim MonNom as string = MonImage.Name
Puis avec une instruction SelectCase, mais je pense qu'il y a une méthode plus simple.
raffika
Messages postés269Date d'inscriptiondimanche 31 mai 2009StatutMembreDernière intervention12 mars 2011 3 oct. 2010 à 12:47
Salut,
essayes de déclarer une variable Image.
Voici un code qui au double-clique
attribue au PictureBox2 l'image
du PictureBox1 cliqué avec le bouton droit :
Private Sub PictureBox1_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown
If e.Button = Windows.Forms.MouseButtons.Right Then
Dim mii As Image = sender.image
PictureBox2.Image = mii
End If
End Sub
NHenry
Messages postés15123Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention20 mai 2024159 3 oct. 2010 à 13:33
Bonjour,
Raffika, il y a un gros problème dans ton code, tu n'as pas activer Option Strict :
Private Sub PictureBox1_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown
If e.Button = Windows.Forms.MouseButtons.Right Then
Dim mii As Image = DirectCast(sender,PictureBox).image
PictureBox2.Image = mii
End If
End Sub
Sinon, si tu ne veut onserver que l'image, utilises le type System.Drawing.Image.
"Mais là, je bloque, je me retrouve systématiquement avec un message d'erreur "
Quel message d'erreur ?