我正在研究游戏应用程序,如果你赢了游戏,屏幕的背景会迅速改变颜色。我如何使我的窗体背景显示随机颜色?
我可能也许可以使用
Random i = new Random()
方法,但我不太确定如何使用它来制作颜色?
答案 0 :(得分:2)
Random rnd = new Random();
Color c = Color.FromArgb(rnd.Next(0xFFFFFF + 1)); // assuming you do not want any transparency
答案 1 :(得分:2)
以这种方式尝试
private static Random rand = new Random();
color= Color.FromArgb(this.rand.Next(256), this.rand.Next(256), this.rand.Next(256));
请参阅此处了解有关Color.FromArgb
的文档您可以使用此功能(仅使用int32)在3个不同的重载中创建颜色
一个整数 - >从32位ARGB值创建Color结构。
三个整数 - >根据指定的8位颜色值(红色,绿色和蓝色)创建颜色结构。 alpha值隐式为255(完全不透明)。虽然此方法允许为每个颜色分量传递32位值,但每个分量的值限制为8位。
答案 2 :(得分:0)
我最近这样做了!这是一段代码片段。您需要使用Hexygenximal代码
string color = "";
Random rand = new Random();
color = string.Format("#{0}{1}{2}{3}{4}{5}", rand.Next(0, 9), rand.Next(0, 9), rand.Next(0, 9), rand.Next(0, 9), rand.Next(0, 9), rand.Next(0, 9));
this.BackColor = System.Drawing.ColorTranslator.FromHtml(color);
要快速闪烁,你需要使用循环或计时器反复重复此代码