十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
可以用循环来实现的,结合窗体的Controls属性,达到引用空间组的成员的目的
成都创新互联专业为企业提供下冶网站建设、下冶做网站、下冶网站设计、下冶网站制作等企业网站建设、网页设计与制作、下冶企业网站模板建站服务,10余年下冶做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
代码如下:
Private Sub command1_click()
Dim i As Long
For i = 1 To 10
Me.Controls("Label" i).Caption = i
Next i
End Sub
参照VB6,在VB.net应该也差不多
方法一,让它们形成控件数组
for i=1 to 5
textbox(i).text=1
next i
方法二,假设这些控件的名称有规律,分别是textbox1,textbox2等
for i=1 to 5
controls("textbox" i ).text=1
next i
在VB6中能通过,希望对你有帮助
你有控件是没错,有方法也没错
但是你没有为控件添加对应的委托,即没有把事件处理方法(Bt_Click)添加到控件的事件队列中去
你应该使用AddHandler语句,具体请查看MSDN
因为你在删除的过程中,控件数量改变,导致循环次数不准确,所以才会不完全删除控件
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Xml;
namespace WindowsApplication14
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void Form1_Load(object sender, EventArgs e)
{
setLabel(5);
}
private void setLabel(int num)
{
for (int i = 0; i num; i++)
{
Label testLbl = new Label();
testLbl.Text = i.ToString();
this.Controls.Add(testLbl);
testLbl.Top = i * 50;
testLbl.Left = 10;
}
}
private void button1_Click(object sender, EventArgs e)
{
clearLabel(this);
}
private void clearLabel(Control container)
{
for (int i = container.Controls.Count; i 0;i-- )
{
Label lbl = container.Controls[i-1] as Label;
container.Controls.Remove(lbl);
}
}
private void button2_Click(object sender, EventArgs e)
{
setLabel(5);
}
}
}
将这些RadioButton控件放入一个容器中,,以Panel1为例,代码如下:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
For Each R As RadioButton In Panel1.Controls
If R.Checked Then
Debug.WriteLine(R.Name " 被选中.")
End If
Next
End Sub
把那三个GroupBox放在Panel1中就行了.