c#自己新建label无显示
答案:4 悬赏:50
解决时间 2021-11-05 10:34
- 提问者网友:人傍凄凉立暮秋
- 2021-11-04 20:57
c#自己新建label无显示
最佳答案
- 二级知识专家网友:独行浪子会拥风
- 2021-11-04 21:33
在生成函数中加要,Form1.Controls.Add(l);追问add过了也没看见追答我自己在PANEL中动态生成的都没问题啊,this.Controls.Add(l)也不行?写在Form1_Load事件中呢?再没有,不用l.Location,来定义位置,用l.Top,l.Left来描述位置,试下,再不行...那真想不出来为什么啦,家里面没有工具,也测试不了追问谢谢了,提醒我了,东西被遮住了……
全部回答
- 1楼网友:几近狂妄
- 2021-11-04 23:41
将
for (int i = 0; i < 10; i++)
{
labela[i] = new Label();
labelinitialize(labela[i], i);
}
写在
InitializeComponent();
中追问写不进去追答怎么个写不进去,可以啊
for (int i = 0; i < 10; i++)
{
labela[i] = new Label();
labelinitialize(labela[i], i);
}
写在
InitializeComponent();
中追问写不进去追答怎么个写不进去,可以啊
- 2楼网友:舊物识亽
- 2021-11-04 23:05
label已经生成,只是在内存里,没有画在form上
应该是:
public Form1()
{
InitializeComponent();
for (int i = 0; i < 10; i++)
{
labela[i] = new Label();
labelinitialize(labela[i], i);
}
}
private void labelinitialize(Label l,int i) {
l.BackColor = System.Drawing.Color.Red;
l.Font = new System.Drawing.Font("宋体", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
l.Location = new System.Drawing.Point(pictureBox1.Location.X+19*i,pictureBox1.Location.Y+19*i);
l.Name = "label"+i;
l.Size = new System.Drawing.Size(19, 19);
l.TabIndex = i+1;
l.Text = ((char)('A'+i)).ToString();
this.Controls.Add(l);
}追问还是没用追答public Form1()
{
InitializeComponent();
for (int i = 0; i < 10; i++)
{
labelinitialize(i);
}
}
private void labelinitialize(int i)
{
Label l = new Label();
l.BackColor = System.Drawing.Color.Red;
l.Font = new System.Drawing.Font("宋体", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
l.Location = new System.Drawing.Point(pictureBox1.Location.X+19*i,pictureBox1.Location.Y+19*i);
l.Size = new System.Drawing.Size(19, 19);
l.Name = "label"+i;
l.TabIndex = i+1;
l.Text = ((char)('A'+i)).ToString();
this.Controls.Add(l);
}
应该是:
public Form1()
{
InitializeComponent();
for (int i = 0; i < 10; i++)
{
labela[i] = new Label();
labelinitialize(labela[i], i);
}
}
private void labelinitialize(Label l,int i) {
l.BackColor = System.Drawing.Color.Red;
l.Font = new System.Drawing.Font("宋体", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
l.Location = new System.Drawing.Point(pictureBox1.Location.X+19*i,pictureBox1.Location.Y+19*i);
l.Name = "label"+i;
l.Size = new System.Drawing.Size(19, 19);
l.TabIndex = i+1;
l.Text = ((char)('A'+i)).ToString();
this.Controls.Add(l);
}追问还是没用追答public Form1()
{
InitializeComponent();
for (int i = 0; i < 10; i++)
{
labelinitialize(i);
}
}
private void labelinitialize(int i)
{
Label l = new Label();
l.BackColor = System.Drawing.Color.Red;
l.Font = new System.Drawing.Font("宋体", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
l.Location = new System.Drawing.Point(pictureBox1.Location.X+19*i,pictureBox1.Location.Y+19*i);
l.Size = new System.Drawing.Size(19, 19);
l.Name = "label"+i;
l.TabIndex = i+1;
l.Text = ((char)('A'+i)).ToString();
this.Controls.Add(l);
}
- 3楼网友:醉吻情书
- 2021-11-04 22:28
Label需要new出来,并且visable属性要为true,最后把new出来的label对象添加到窗体空间集合里this.controls.add(label对象);
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯