C#单击时如何使标签数组中的标签消失?
我的代码使5个标签随机出现。左边的位置,你可以看到它。 我希望在单击特定标签时它消失,但我不知道如何告诉我的单击无效C#单击时如何使标签数组中的标签消失?,c#,arrays,label,C#,Arrays,Label,我的代码使5个标签随机出现。左边的位置,你可以看到它。 我希望在单击特定标签时它消失,但我不知道如何告诉我的单击无效 public partial class Form1 : Form { public Form1() { InitializeComponent(); } Label [] kubeliai = new Label [5]; int poz = 100; private void Form1_Load(objec
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
Label [] kubeliai = new Label [5];
int poz = 100;
private void Form1_Load(object sender, EventArgs e)
{
for (int i = 0; i < kubeliai.Length; i++)
{
kubeliai[i] = new Label();
Controls.Add(kubeliai[i]);
Random pos = new Random();
kubeliai[i].Top = 50;
kubeliai[i].Left = poz;
poz += pos.Next(50, 200);
kubeliai[i].BackColor = Color.Red;
kubeliai[i].Height = 20;
kubeliai[i].Width = 20;
kubeliai[i].Click += new EventHandler(kubelio_clickas);
}
}
void kubelio_clickas (object sender, EventArgs e)
{
}
}
公共部分类表单1:表单
{
公共表格1()
{
初始化组件();
}
标签[]kubeliai=新标签[5];
int-poz=100;
私有void Form1\u加载(对象发送方、事件参数e)
{
for(int i=0;i
对象发送方
是对触发事件的对象的引用。所以基本上,发送者就是你要寻找的对象
您只需将其设置为不可见:
((Label)sender).Visible = false;
对象
sender
是对触发事件的对象的引用。所以基本上,发送者就是你要寻找的对象
您只需将其设置为不可见:
((Label)sender).Visible = false;
“单击”标签的实例位于sender
参数中:
void kubelio_clickas (object sender, EventArgs e)
{
Label clickedLabel = sender as Label;
if (clickedLabel != null) {
clickedLabel.Visible = false;
}
}
因为在.NET事件处理程序中
默认情况下使用对象作为发送方
的类型,您必须首先将其强制转换为标签
。单击的标签实例位于发送方
参数中:
void kubelio_clickas (object sender, EventArgs e)
{
Label clickedLabel = sender as Label;
if (clickedLabel != null) {
clickedLabel.Visible = false;
}
}
因为在.NET事件处理程序中
默认使用对象作为发送者的类型
,所以必须首先将其强制转换为标签
我希望在单击特定标签时它消失
只需将标签的.Visible
属性设置为false:
void kubelio_clickas (object sender, EventArgs e)
{
if (sender is Label)
((Label)sender).Visible = false;
}
我希望在单击特定标签时它消失
只需将标签的.Visible
属性设置为false:
void kubelio_clickas (object sender, EventArgs e)
{
if (sender is Label)
((Label)sender).Visible = false;
}
sender参数是对标签Clicked的引用,
Random pos=new Random()的可能重复项代码>行应该在for
循环的外部(和之前)。发送方参数是对标签Clicked的引用可能重复Random pos=new Random()代码>行应该在for
循环的外部(和之前)。