VB.NET:如何以编程方式向WinForm添加多个控件
我正在尝试在timer tick事件中将标签添加到表单中。它添加了第一个标签没有问题,但似乎没有添加更多 经过一些调试后,我可以看到添加了控件,但它只显示第一个标签。这里有我遗漏的东西吗VB.NET:如何以编程方式向WinForm添加多个控件,vb.net,winforms,controls,Vb.net,Winforms,Controls,我正在尝试在timer tick事件中将标签添加到表单中。它添加了第一个标签没有问题,但似乎没有添加更多 经过一些调试后,我可以看到添加了控件,但它只显示第一个标签。这里有我遗漏的东西吗 Private Sub timTick1_Tick(sender As System.Object, e As System.EventArgs) Handles timTick1.Tick iTick1 += 1 lblTick1.Text = iTick1 iPhase += 1
Private Sub timTick1_Tick(sender As System.Object, e As System.EventArgs) Handles timTick1.Tick
iTick1 += 1
lblTick1.Text = iTick1
iPhase += 1
lblPhase.Text = iPhase
Select Case iPhase
Case 1
Phase1()
Case 2
Phase2()
Case 3
Phase3()
Case 4
Phase4()
End Select
If iPhase = 4 Then
iPhase = 0
End If
End Sub
Private Sub Phase4()
Panel3.Controls.Add(New Label With {.Text = "TESTING" & iTick1, .Location = New Point(iTick1, iTick1)})
End Sub
指定的位置属性不正确,4像素不够。第二个标签将位于第一个标签下方,因此您无法读取其文本。使用正确的位置或使用标签的BringToFront()方法。谢谢,BringToFront()方法有效。我知道标签是在第一个标签下渲染的,但我不明白为什么我没有看到第20个、第100个或第1000个标签,因为它将在原始标签之外渲染。无论如何,这一切现在似乎都在起作用;这更像是一种概念证明。谢谢。您必须设置BackColor或BorderStyle属性才能看到它。