好的,这是我昨天的问题
中的一种高级方法switch (status)
{
case 0:
{
label1.Visible = false;
label2.Visible = true;
label3.Visible = false;
status = 1;
break;
}
case 1:
{
label1.Visible = false;
label2.Visible = false;
label3.Visible = true;
status = 2;
break;
}
case 2:
{
label1.Visible = true;
label2.Visible = false;
label3.Visible = false;
status = 0;
break;
}
}
我在命令按钮中使用此开关标志并取得了很多成功 但是我发现了一些很酷的东西,所以我认为这是一个很大的进步,可能是这样的
while (true)
{
switch (status)
{
case 0:
{
label1.Visible = false;
label2.Visible = true;
label3.Visible = false;
status = 1;
break;
}
case 1:
{
label1.Visible = false;
label2.Visible = false;
label3.Visible = true;
status = 2;
break;
}
case 2:
{
label1.Visible = true;
label2.Visible = false;
label3.Visible = false;
status = 0;
break;
}
}
}
所以我只使用一个命令按钮,然后开关中的所有情况都开始重复并重复过来。 但是这个逻辑完全失败了,当我执行程序时没有任何想法。 我已经通过增加循环和失败来完成此操作, 在这种情况下是否有可能使用while循环?
答案 0 :(得分:0)
单击button1后,这段代码将无限期地显示和隐藏标签。看看它是不是你想要的。
private void button1_Click(object sender, EventArgs e)
{
button1.Enabled = false;
var t = new System.Threading.Tasks.Task(Switcher);
t.Start();
}
private void Switcher()
{
int status = 0;
while (true)
{
switch (status)
{
case 0:
label1.Visible = false;
label2.Visible = true;
label3.Visible = false;
status = 1;
break;
case 1:
label1.Visible = false;
label2.Visible = false;
label3.Visible = true;
status = 2;
break;
case 2:
label1.Visible = true;
label2.Visible = false;
label3.Visible = false;
status = 0;
break;
}
System.Threading.Thread.Sleep(200);
}
}