Problème pour accèder à l'indice d'une image créé dynamiquement [Résolu]

Signaler
Messages postés
28
Date d'inscription
mercredi 23 mars 2011
Statut
Membre
Dernière intervention
16 août 2011
-
Messages postés
28
Date d'inscription
mercredi 23 mars 2011
Statut
Membre
Dernière intervention
16 août 2011
-
Chers membres,
Me voilà confronté à un problème.
J'ai créé un certain nombre d'image de façon dynamique dans un formulaire via la procedure nouvelles_images()
Je peux accèder à chaque image créée en double cliquant sur ces dernières via la procédure PictureBox_DoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
Ce que je ne réussis pas à faire c'est de créer une procédure permettant d'accèder à n'importe image du formulaire via son indice sans qu'il ne soit nécessaire de cliquer où que ce soit.
Quelqu'un aurait-il une idée ?
Merci d'avance.

Private Sub nouvelles_images()
Dim i, deplacement_image_horizontal, deplacement_image_vertical As Integer
For i = 0 To 38
Dim image As PictureBox = New PictureBox
image.Name = "Image" & i
If (i >= 0 And i <= 18) Then
If (i = 0) Then
deplacement_image_vertical = 10
image.Top = deplacement_image_vertical
deplacement_image_horizontal = 5
image.Left = deplacement_image_horizontal
Else
deplacement_image_vertical = 10
image.Top = deplacement_image_vertical
deplacement_image_horizontal = deplacement_image_horizontal + 75
image.Left = deplacement_image_horizontal
End If
End if
Next i
image.Load("C:\Users\jean-jacques\Desktop\Epreuve Intégrée\logos clubs\charleroi.gif")
image.Visible = True
image.SizeMode = PictureBoxSizeMode.StretchImage
image.Width = 55
image.Height = 55
AddHandler image.DoubleClick, AddressOf PictureBox_DoubleClick
Controls.Add(image)
Next i
End Sub

Private Sub PictureBox_DoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
Dim selection_image As PictureBox = DirectCast(sender, PictureBox)
selection_image.Load("C:\Users\jean-jacques\Desktop\Epreuve Intégrée\logos clubs\cercle_bruges.gif)
End Sub

2 réponses

Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
50
Salut
Peut etre déclare un tableau

Private images(38) As
System.Windows.Forms.PictureBox

dans la sub nouvelles_images
for i = 0 to 38
images(i) = new picturebox
et aussi tu peux te servir tu tag
pour numéroter les images
images(i).tag = i
me.Controls.Add(images(iter))
AddHandler images(iter).MouseClick, AddressOf image_double_click
next
end sub

sers toi du tableau images
il y a peut etre des meilleurs solution
Messages postés
28
Date d'inscription
mercredi 23 mars 2011
Statut
Membre
Dernière intervention
16 août 2011

ok j'ai trouvé une solution à mon problème.
Merci.