十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
布局方面,建议你用FlowLayoutPanel,不用手工控制控件位置了。假设有一个FlowLayoutPanel1。
成都创新互联是一家集网站建设,即墨企业网站建设,即墨品牌网站建设,网站定制,即墨网站建设报价,网络营销,网络优化,即墨网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
先在窗体类中建一个控件的集合:
Dim
TextBoxes
As
New
List(Of
TextBox)
在button1的
Click事件
中写:
For
i
=
1
To
5
'5是每次加入的数量
Dim
newTextBox
As
New
TextBox()
'newTextBox.Size
=
New
Size(100,20)
'
TextBoxes.Add(newTextBox)
'加入我们的集合中
FlowLayoutPanel1.Controls.Add(newTextBox)
'加到窗体的FlowLayoutPanel中去
Next
i
然后button2的Click事件中:
For
Each
itemTextBox
As
TextBox
In
TextBoxes
'这里的itemTextBox.Text就代表每个TextBox里的文本
'如果你需要清空,调用TextBoxes.Clear()和FlowLayoutPanel.Controls.Clear()即可
Next
可以先定义name,动态生成的时候,赋给它,你调用的时候就使用固定的变量:
dim a(N) as object
Dim ttmp As New TextBox
ttmp.Top = 3
ttmp.Left = 3
ttmp.Width = 100
ttmp.Text = "我是文本框"
a(1) = ttmp
Me.Controls.Add(a(1))
'调用的时候可以用a(1).text调用了呢
似有控件遍历窗体控件集合,或在控件集合中查询该控件名字,公用控件直接名字
Private WithEvents NewTextBox As TextBox
'通过使用WithEvents关键字声明一个对象变量为新的命令按钮
Private Sub Command1_Click()
If NewTextBox Is Nothing Then
Set NewTextBox = Controls.Add("VB.TextBox", "cmdNew", Form1)
NewTextBox.Move 200, 200
NewTextBox.Width = Form1.Width - 450
NewTextBox.Height = Form1.Height - 1400
NewTextBox.Visible = True
End If
End Sub
Private Sub Command2_Click()
If NewTextBox Is Nothing Then
Exit Sub
Else
Controls.Remove NewTextBox
Set NewTextBox = Nothing
End If
End Sub