加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

在VB.NET中用语句动态地创建控件数组的方法

(2016-06-28 12:29:46)
分类: VB.NET编程


 VB6提供了一种使用控件数组的方法,用过这种方法的人都知道,它大大方便代码的编写。但是,到了VB.NET,原来的方法已经不能够实现。下面介绍在VB.NET中用语句动态地创建控件数组的两种方法。

方法一:使用列表类集合ArrayList

 

Public Class Form1

    Private MyTextBoxArray As New ArrayList

 

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim i As Integer

        For i = 0 To 9     '利用循环语句动态加入10个控件的控件数组。 

            '定义文本框对象  

            Dim FirstTextBox As New TextBox

            '将一个文本框控件加入到Form  

            Me.Controls.Add(FirstTextBox)

            '将一个文本框控件加入列表集合里  

            MyTextBoxArray.Add(FirstTextBox)

            '设置该文本框控件的属性 

            MyTextBoxArray.Item(i).top = i * MyTextBoxArray.Item(i).height + 20    '修改新加入控件在Form上的位置  

            MyTextBoxArray.Item(i).left = 100

            '修改新加入控件的TabIndex  

            FirstTextBox.TabIndex = i

            '修改新加入控件的Text  

            MyTextBoxArray.Item(i).text = "TextBox" & i.ToString    '修改默认文本。  

        Next

    End Sub

End Class

 

方法二:使用控件对象 (例如:文本框)

 

Public Class Form1

    Private MyTextBoxArr() As TextBox    '声明文本框动态控件数组

 

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim i As Integer

        For i = 0 To 9     '利用循环语句动态加入10个控件的控件数组。 

            '定义文本框对象  

            Dim FirstTextBox As New TextBox

            '将一个文本框控件加入到Form

            Me.Controls.Add(FirstTextBox)

            '从新定义控件数组的规模

            ReDim Preserve MyTextBoxArr(i)

            '将一个文本框控件加入控件数组(产生联系)  

            MyTextBoxArr(i) = FirstTextBox

            '设置该文本框控件的属性 

            MyTextBoxArr(i).Top = i * MyTextBoxArr(i).Height + 20 '修改新加入控件在Form上的位置  

            MyTextBoxArr(i).Left = 100

            '修改新加入控件的TabIndex  

            FirstTextBox.TabIndex = i

            '修改新加入控件的Text  

            MyTextBoxArr(i).Text = "TextBox" & i.ToString '修改默认文本。  

        Next

    End Sub

End Class

 

以上代码在VB.NET 2010 中运行通过。

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有