c#创建了groupbox控件数组,用for循环添加到窗体中出问题。
GroupBox[]groBox=newGroupBox[10];publicvoidAddGroupBox(intn){for(inti=0;i<10;i++){gro...
GroupBox[] groBox = new GroupBox[10];
public void AddGroupBox(int n)
{
for (int i = 0; i < 10; i++)
{
groBox[i].Name = "groBox" + i;
groBox[i].Text = "第" + (i + 1) + "题";
groBox[i].Width = 260;
groBox[i].Height = 50;
groBox[i].Location = new Point(20, 20 + i * 50);
this.Controls.Add(groBox[i]);
}
}
为什么窗体什么都没有,初学c#。 展开
public void AddGroupBox(int n)
{
for (int i = 0; i < 10; i++)
{
groBox[i].Name = "groBox" + i;
groBox[i].Text = "第" + (i + 1) + "题";
groBox[i].Width = 260;
groBox[i].Height = 50;
groBox[i].Location = new Point(20, 20 + i * 50);
this.Controls.Add(groBox[i]);
}
}
为什么窗体什么都没有,初学c#。 展开
2个回答
展开全部
你的代码只是创建了10个GroupBox类型的变量,而这10变量你都没有实例化,就赋值肯定没有结果了。正确代码如下:
for (int i = 0; i < 10; i++)
{
groBox[i] = new GroupBox();
groBox[i].Name = "groBox" + i;
groBox[i].Text = "第" + (i + 1) + "题";
groBox[i].Width = 260;
groBox[i].Height = 50;
groBox[i].Location = new Point(20, 20 + i * 50);
this.Controls.Add(groBox[i]);
}
追问
还想问下但添加groupbox的时候怎么让他们n个一列n个一列的显示在窗体上呢?
追答
int n = 3;
int y = 0;
int x = -1;
for (int i = 0; i < 10; i++)
{
y = i % n;
if (y == 0) x++;
groBox[i] = new GroupBox();
groBox[i].Name = "groBox" + i;
groBox[i].Text = "第" + (i + 1) + "题";
groBox[i].Width = 260;
groBox[i].Height = 50;
groBox[i].Location = new Point(20 + x * 260, 20 + y * 50);
this.Controls.Add(groBox[i]);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询