samedi 9 mai 2015

Drawing an array of PictureBoxes in vb.net

I'm trying to draw an array of PictureBoxes, for testing i use the same picture for each picturebox. But instead of showing the picture, it show the color blue. I would show you a picture, but i dont have 10 reputation.. Anyway the code looks like that

        Dim teren(120) As PictureBox
        Dim x_locatie As Integer = 1, y_locatie As Integer = 0
        For i = 0 To 10
        x_locatie = 210
        For j = 0 To 12
            teren(i * j) = New PictureBox()
            teren(i * j).Size = New Size(61, 61)
            teren(i * j).Name = "x" + i.ToString + "y" + j.ToString
            teren(i * j).Location = New Point(x_locatie, y_locatie)
            Dim locatie As String = folder + "\harta\test.png"
            teren(i * j).ImageLocation = locatie
            teren(i * j).Show()
        Next
        y_locatie += 61
    Next

I also tried another method , but same result.

Sub PictureBox1_Paint(sender1 As Object, er As PaintEventArgs)
    If myImage IsNot Nothing Then
        Dim r As New Rectangle(x, y, xlatime, ylungime)
        er.Graphics.DrawImage(myImage, r)
    End If
End Sub

Sub deseneaza(ByVal poza As String, ByRef x_perm As Integer, ByRef y_perm As Integer, ByRef lungime As Integer, ByRef latime As Integer)
    myImage = Image.FromFile(poza)
    x = x_perm
    y = y_perm
    xlatime = latime
    ylungime = lungime
    Refresh()
End Sub

 'this part of code is in body of another function
 Dim x_locatie As Integer = 1, y_locatie As Integer = 0
        For i = 0 To 10
        x_locatie = 210
        For j = 0 To 12
            Dim locatie As String = folder + "\harta\test.png"
            deseneaza(locatie, x_locatie, y_locatie, 61, 61)
        Next
        y_locatie += 61
    Next

I saw in other threads that their problem solution was something like that Dim teren() As PictureBox {teren1, teren2 , ... , teren n} But the problem in my case is that i need 120 PictureBoxes, and i think that it must be a way to do this without writing 120 pictureboxes.

Aucun commentaire:

Enregistrer un commentaire