Partage
  • Partager sur Facebook
  • Partager sur Twitter

[VB.NET]Ajout dynamique tableau PictureBox

Sujet résolu
    4 février 2012 à 15:53:38

    Bonjour à tous,
    Voila, j'essaye de créer en execution un tableau de 100 pictureBox ( la flemme de la faire à la main :p )
    Et je comprends pas pourquoi ça ne marche pas, il ne me sort aucune erreur ...
    Ma fonction :

    Dim grille(10, 10) As PictureBox
    
        Sub load_Grille()
            Dim x As Integer = 0
            Dim y As Integer = 0
            Dim taille As System.Drawing.Size
            taille.Height = 34
            taille.Width = 34
            Dim lieu As Point
            For Each img As PictureBox In grille
                lieu.X = x
                lieu.Y = y
                img.Size = taille
                img.Location = lieu
                img.Visible = True
                img.Image = mur
                Me.Controls.Add(img)
                x += 34
                If x = 306 Then
                    x = 0
                    y += 34
                End If
            Next
        End Sub
    



    Je pourrais passer par une boucle balayant le tableau "manuellement", mais c'est beaucoup plus pratique avec celle ci :)
    Donc j'en déduis que l'erreur vient de ma boucle For Each ...

    Si quelqu'un a une idée :D
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      4 février 2012 à 16:40:46

      Quand tu crées un tableau de PictureBox, ton tableau est rempli de Nothing.
      Essaie plutôt des boucles imbriquées qui initialisent chaque PictureBox puis la mettent dans le tableau.
      • Partager sur Facebook
      • Partager sur Twitter
        4 février 2012 à 17:27:16

        C'était ça, merci :D

        Si quelqu'un est intéressé, voici le code :
        Dim grille(10, 10) As PictureBox
        
        Sub ini_Grille()
                Dim i As Integer = 0
                Dim u As Integer = 0
                Dim x As Integer = 0
                Dim y As Integer = 0
                Dim taille As System.Drawing.Size
                taille.Height = 34
                taille.Width = 34
                Dim lieu As Point
                While u < 10 And i < 10
                    While i < 10
                        grille(i, u) = New PictureBox()
                        lieu.X = x
                        lieu.Y = y
                        grille(i, u).Size = taille
                        grille(i, u).Location = lieu
                        grille(i, u).Visible = True
                        grille(i, u).Image = mur
                        Me.Controls.Add(grille(i, u))
                        x += 34
                        If x = 340 Then
                            x = 0
                            y += 34
                        End If
                        i += 1
                    End While
                    u += 1
                    i = 0
                End While
            End Sub
        
        • Partager sur Facebook
        • Partager sur Twitter

        [VB.NET]Ajout dynamique tableau PictureBox

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown