我有一些动态创建的按钮(运行时生成的按钮)以及一些动态创建的面板。我想做类似于下面的代码的东西,但我知道这段代码不起作用。通过动态创建的控件循环
For i = 1 to NumberOfButtons
button(i).top = panel(i).top
next
的按钮名为Button1,BUTTON2等,以及面板也称为PANEL1,是Panel2等 这一切正在用VB写的快递2008年
我有一些动态创建的按钮(运行时生成的按钮)以及一些动态创建的面板。我想做类似于下面的代码的东西,但我知道这段代码不起作用。通过动态创建的控件循环
For i = 1 to NumberOfButtons
button(i).top = panel(i).top
next
的按钮名为Button1,BUTTON2等,以及面板也称为PANEL1,是Panel2等 这一切正在用VB写的快递2008年
当你生成你的按钮和面板,你需要将它们存储到一个数组中。然后你可以通过你的代码示例中的索引来访问它。另一种选择是通过Me.Controls("button1")
和类似的方式来完成,但我会考虑这种不好的编码。
For i As Integer = 1 To theTopNumber
Me.Controls("button" & i.ToString).Top = Me.Controls("panel" & i.ToString).Top
Next
这不工作?
For Each btn As Button In Me.Controls
For Each pnl In Me.Controls
btn.Top = pnl.Top
Next
Next
请(如果您满意)投票或标记为答案,因为我神秘的禁止没有特别原因。这可能有助于重新启用它:/
;)
我就要在使用数组给一个尝试,但至少那里有另一种选择。谢谢 – Jamie 2013-03-21 20:25:42
@ user2179046:你不能出错阵列。名称的字符串常量很脆弱,以便长期维护。 – Neolisk 2013-03-21 20:26:57
只需更新一下,就可以完全正常工作,并在此过程中学习更多关于数组的知识!我首先尝试使用me.controls(“button1”)方法。然后尝试使用数组,代码变得非常简单。谢谢您的帮助! – Jamie 2013-03-21 23:23:23