我试图制作一个'自动变色循环'换句话说,当某人的鼠标悬停在标签上时,它会以快速重复的方式改变颜色,比如300微秒。
private void label1_MouseHover(object sender, EventArgs e)
{
while (true)
{
Random color = new Random();
Color randomColor = Color.FromArgb(color.Next(255), color.Next(255), color.Next(255)); label1.ForeColor = randomColor;
return;
}
}
这个问题在循环中,或者我应该说缺少它,我假设while(true)本身就是一个循环,如果我把鼠标放在同一个地方,只要它结束了它会起作用的标签,但它只行动一次,简单来说,我必须将鼠标悬停在它上面,然后离开该区域,然后再次悬停,让它改变颜色两次,理想的是我可以让它总是改变它颜色,所以我不必悬停,但我想不出办法,因为我需要while循环。第二部分的任何想法都是值得赞赏但不是必要的:)
答案 0 :(得分:0)
好的,感谢那些意识到我是白痴的家伙:3
对于任何可能需要/需要代码的人。
在表格的开头:
public Form2()
{
InitializeComponent();
notifyIcon1.Visible = true;
timer2.Start();
}
private void timer2_Tick(object sender, EventArgs e)
{
timer2.Interval = 100;
timer2.Enabled = true;
timer2.Tick += changer;
}
void changer (object sender, EventArgs e)
{
Random color = new Random();
Color randomColor = Color.FromArgb(color.Next(255), color.Next(255), color.Next(255));
label1.ForeColor = randomColor;
}
现在添加这些,顺便说一句,我知道我每次都会发出一个新的随机,如果你想编辑它,继续,但它对我有用,非常好,所以我会保持它方式。