如何随机选择颜色?

mousekidcn 2007-05-05 12:46:20
我的问题是这样的,我想画出不同颜色的曲线,所有曲线的颜色存放在一个数组里,但是数组的大小不确定,所以不知道怎么样使这些颜色各不相同,而且最好这些颜色之间的差别大一些。不知道我的描述是不是清楚,反正请大家帮帮我,谢谢!
...全文
527 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wanghui0380 2011-10-22
  • 打赏
  • 举报
回复
晕,这是谁在挖坟,07年的玩意都挖出来了
wanghui0380 2011-10-22
  • 打赏
  • 举报
回复
呵呵,颜色实际上是互补的系统,也是一个量化的系统

黑与白 互补 0x0000000,0xffffff

那么 颜色差异实际上可以同过其差值得到,所以按你的要求,只有第一步随机取颜色,而后面其实取的是差值最大的一个

当然如果整个要求是随机的话,到可以不需要设置数组,只是随机一个初值。后面的值可以取补码再加一个随机干扰值即可
dylike 2011-10-22
  • 打赏
  • 举报
回复
Color.FromArgb(255,Cint(Rnd*255),Cint(Rnd*255),Cint(Rnd*255))
高彬 2011-10-21
  • 打赏
  • 举报
回复
Color.FromArgb(new Random().Next(0, 255 * 255 * 255));
javaoraspx 2011-10-21
  • 打赏
  • 举报
回复
你可以把线程去掉了,我程序需要,,.....
javaoraspx 2011-10-21
  • 打赏
  • 举报
回复

/// <summary>
/// 获取随机颜色
/// </summary>
/// <returns></returns>
private string GetColor()
{
Thread.Sleep(50);
string strcolor = "1,2,3,4,5,6,7,8,9,0,A,B,C,D,E,F";
string[] scolor = strcolor.Split(',');
string mycolor = "";
Random r = new Random();
for (int i = 0; i <= 5; i++)
{

mycolor += scolor[r.Next(0, scolor.Length)];
}
return mycolor;
}
sjfbtnmcn 2011-10-21
  • 打赏
  • 举报
回复
OK,可以把你想要的颜色RGB值,定义到一个数组里面,然后 Random 选择数组。
欢乐的小猪 2011-10-21
  • 打赏
  • 举报
回复
定义你想要的差别较大的比如10种颜色放到枚举变量中。通过random随机0——9取颜色

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧