如何在vb 2010中添加行中的图片框

时间:2014-04-05 12:30:51

标签: vb.net

我不确定如何在vb 2010中的多行上创建图片框。目前,我只能创建它们 第二行有一行和一个图片框。 (最后我想添加5行,每行有10个图片框)我使用了以下代码:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

 Dim xPosition As Integer = 20
 Dim yPosition As Integer = 40


 For i As Integer = 1 To 20
 Dim pb As New PictureBox

 With pb

 If i < 20 Then
.Name = "PictureBox" & i.ToString
.SizeMode = PictureBoxSizeMode.Zoom
.Size = New Size(60, 60)
.Location = New Point(xPosition, yPosition)
.Image = My.Resources.Seating_No_Person

 Me.Controls.Add(pb)

 AddHandler pb.Click, AddressOf PictureBox_Click
 xPosition += 70

 ElseIf i > 10 Then
.Name = "PictureBox" & i.ToString
.SizeMode = PictureBoxSizeMode.Zoom
.Size = New Size(60, 60)
.Location = New Point(20, 120)
.Image = My.Resources.Seating_No_Person

 Me.Controls.Add(pb)
 AddHandler pb.Click, AddressOf PictureBox_Click

 xPosition += 70
 End If

 Dim thisSeating As New Seating

 With thisSeating
.SeatNumber = i
.PB = pb
.Occupied = False
 End With

 seatingList.Add(thisSeating)
 End With
 Next

 End Sub

如果有人愿意帮助我或指导我走正确的道路,我将非常感激:) 提前致谢

1 个答案:

答案 0 :(得分:0)

这是你要找的吗?

Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    Dim xPosition As Integer = 20
    Dim yPosition As Integer = 40

    For i As Integer = 1 To 5
        For j As Integer = 1 To 10
            Dim pb As New PictureBox

            With pb
                .Name = "PictureBox" & i.ToString
                .SizeMode = PictureBoxSizeMode.Zoom
                .Size = New Size(60, 60)
                .Location = New Point(xPosition + (j * 70), yPosition + (i * 100))
                .Image = My.Resources.Seating_No_Person

                Me.Controls.Add(pb)

                AddHandler pb.Click, AddressOf PictureBox_Click

                Dim thisSeating As New Seating

                With thisSeating
                    .SeatNumber = i
                    .PB = pb
                    .Occupied = False
                End With

                seatingList.Add(thisSeating)
            End With
        Next
    Next
End Sub