zoukankan      html  css  js  c++  java
  • C#中怎样获取System.Drawing.Color的所有颜色对象并存到数组中

    场景

    需要在生成一组多条曲线时,随机从一颜色数组中取颜色,至少一百种颜色以上。

    而System.Drawing.Color自带140多种颜色

    那么怎样将其自带的颜色对象取出并存在数组中。

    注:

    博客主页:
    https://blog.csdn.net/badao_liumang_qizhi
    关注公众号
    霸道的程序猿
    获取编程相关电子书、教程推送与免费下载

    实现

    //用于存取取出的颜色对象
    List<Color> colorList = new List<Color>();
    //通过GetMember获取所有的公共成员
    foreach (var item in typeof(Color).GetMembers())
          {
           //只取属性且为属性中的已知Color,剔除byte属性以及一些布尔属性等(A B G R IsKnownColor Name等)
              if (item.MemberType == System.Reflection.MemberTypes.Property && System.Drawing.Color.FromName
    
    (item.Name).IsKnownColor == true)
                  {
                      Color color = System.Drawing.Color.FromName(item.Name);
                      colorList.Add(color);
                   }
            }
    //转成数组
    Color[] colors = colorList.ToArray();

    可以查看此时获取的颜色对象的数组为:

  • 相关阅读:
    [SHOI2015]脑洞治疗仪
    [SDOI2016]数字配对
    [SDOI2019]快速查询
    [HNOI2019]JOJO
    [TJOI2019]甲苯先生和大中锋的字符串
    [CQOI2017]老C的方块
    [CQOI2017] 小Q的表格
    [SHOI2012] 火柴游戏
    板子
    自我介绍
  • 原文地址:https://www.cnblogs.com/treeskyer/p/12779714.html
Copyright © 2011-2022 走看看