Imports?System.Text
為南岳等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及南岳網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都做網(wǎng)站、成都網(wǎng)站制作、南岳網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
Imports?System.Windows
Imports?System.Windows.Forms
Public?Class?Netin?'類?名
'Inherits?Forms.Form
Public?Shared?Netin?As?New?Form
Public?components?As?ComponentModel.IContainer
Protected?Overrides?Sub?Finalize()
MyBase.Finalize()
End?Sub???
DebuggerStepThrough()
Public?Sub?InitializeComponent()
Me.components?=?New?ComponentModel.Container()
Dim?resources?As?ComponentModel.ComponentResourceManager?=?New?System.ComponentModel.ComponentResourceManager(GetType(bjt))
Me.TextBox1?=?New?TextBox(Me.components)
Me.Button1?=?New?Button(Me.components)
'For?…?Next??
Me.Controls.Add(Me.TextBox1)
Me.Controls.Add(Me.Button1)
Me.m?=?New?ContextMenuStrip(Me.components)
Me.m1.Text?=?"菜單項(xiàng)1"?????
'設(shè)置并添加相關(guān)控件,(窗體)Netin?初始化。
End?Sub
Private?Sub?Form_Load(sender?As?Object,?e?As?EventArgs)?Handles?Me.Load
'加載后顯示窗體Netin。
End?Sub
Public?Sub?ObjClick(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button1.Click,Button2.Click,Button3.Click,TextBox1.Click?
MessageBox.Show("你按了鼠標(biāo)")
End?Sub
Public?WithEvents?TextBox1?As?TextBox
Public?WithEvents?Button1?As?Button
Public?WithEvents?Button2?As?Button
Public?WithEvents?Button3?As?Button
Friend?WithEvents?m?As?ContextMenuStrip
Friend?WithEvents?m1?As?ToolStripMenuItem
End?Class
Class?MainWindow
Netin.Show()
Netin.Button2.Text?=?"Main"
……
VB.net中沒有控件數(shù)組的說法。
替代方法:
·創(chuàng)建一個控件的類型數(shù)組: Button[],將所有的button控件創(chuàng)建好后存進(jìn)去,可以遍歷它;
·或?qū)⑺幸闅v的控件放在一個容器如Panel中,以后遍歷這個容器的子控件即可。
----------
你的情況,推薦放在容器中。比如下面就是一個遍歷容器的控件,然后找出所有的文本框并修改內(nèi)容的程序:
//pn 是個 Panel 控件
foreach (Control item in pn.Controls)
{
if (typeof(TextBox) == item.GetType())
{
((TextBox)item).Text = "我是動態(tài)修改的!";
}
}
Dim Str(20) As String '20數(shù)據(jù)元素
Dim Text(20) As TextBox
Dim n As Integer = 0
For Each i In Text
i = New TextBox '實(shí)例化
i.Location = New Point(50, n * 20)
Me.Controls.Add(i) '添加窗體
Dim Index As Integer = i.TabIndex '沒index屬性
Str(n) = Index
i.Text = Str(n) 'str數(shù)組值賦值給文本框
n += 1
Next
我是VB.Net 2010,你看看能行不。
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 8 '利用循環(huán)語句動態(tài)加入控件數(shù)組。
Dim FirstTextBox As New TextBox
'定義文本框?qū)ο?/p>
Me.Controls.Add(FirstTextBox)
'將一個文本框控件加入到Form上
MyTextBoxArray.Add(FirstTextBox)
'將文本框控件加入到例表集合中
MyTextBoxArray.Item(i).top = i * MyTextBoxArray.Item(i).height + 20 '修改新加入控件在Form上的位置
MyTextBoxArray.Item(i).left = 100
FirstTextBox.TabIndex = i
'修改新加入控件的TabIndex值
MyTextBoxArray.Item(i).text = "TextBox" i.ToString '修改默認(rèn)文本。
Next
End Sub
End Class
你這是控件數(shù)組?你這明明就是9個不同的 TextBox 控件啊,只不過名字長得像而已。
vb.net和vb6.0不同,無法直接使用控件數(shù)組。不過可以通過其他方式變通一下。
比如現(xiàn)在有10個label,要將這10個label的text屬性統(tǒng)一設(shè)置為“這是第X個標(biāo)簽”(X為1-10)。
1.建立10個label,名稱分別為label1、label2、label3。。label10
2.代碼:
For i = 1 To 10
Me.FindControl("label" i).Text = "這是第" i “個標(biāo)簽”
Next i
關(guān)鍵點(diǎn)是Me.FindControl()的方法,在代碼中Me.FindControl("label1").text與label1.text是一樣的。