• C# WinForm修改Panel边框颜色


     

    无法在属性面版里直接修改,可以在Paint事件里重画。

    private void panel1_Paint(object sender, PaintEventArgs e)
    {
        ControlPaint.DrawBorder(e.Graphics,
                                    this.panel1.ClientRectangle,
                                    Color.LightSeaGreen, //左边框
                                    1,
                                    ButtonBorderStyle.Solid,
                                    Color.LightSeaGreen, //上边框
                                    1,
                                    ButtonBorderStyle.Solid,
                                    Color.LightSeaGreen,//右边框
                                    1,
                                    ButtonBorderStyle.Solid,
                                    Color.LightSeaGreen,//下边框
                                    1,
                                    ButtonBorderStyle.Solid);
    }

     

    url:http://greatverve.cnblogs.com/archive/2011/07/21/panel-border-color.html
    附:C# RGB与16进制颜色转换方法

    #region [颜色:16进制转成RGB]
            /// <summary>
            /// [颜色:16进制转成RGB]
            /// </summary>
            /// <param name="strColor">设置16进制颜色 [返回RGB]</param>
            /// <returns></returns>
            public static System.Drawing.Color colorHx16toRGB(string strHxColor)
            {
                try
                {
                    if (strHxColor.Length == 0)
                    {//如果为空
                        return System.Drawing.Color.FromA#000000;//设为黑色
                    }
                    else
                    {//转换颜色
                        return System.Drawing.Color.FromArgb(System.Int32.Parse(strHxColor.Substring(1, 2), System.Globalization.NumberStyles.AllowHexSpecifier), System.Int32.Parse(strHxColor.Substring(3, 2), System.Globalization.NumberStyles.AllowHexSpecifier), System.Int32.Parse(strHxColor.Substring(5, 2), System.Globalization.NumberStyles.AllowHexSpecifier));
                    }
                }
                catch
                {//设为黑色
                    return System.Drawing.Color.FromA#000000;
                }
            }
            #endregion


    #region [颜色:RGB转成16进制]
            /// <summary>
            /// [颜色:RGB转成16进制]
            /// </summary>
            /// <param name="R">红 int</param>
            /// <param name="G">绿 int</param>
            /// <param name="B">蓝 int</param>
            /// <returns></returns>
            public static string colorRGBtoHx16(int R, int G, int B)
            {
                return System.Drawing.ColorTranslator.ToHtml(System.Drawing.Color.FromArgb(R, G, B));
            }
            #endregion

     

    又:

     

    private string ToHexColor(Color color)
            {
                string R = Convert.ToString(color.R, 16);
                if (R == "0")
                    R = "00";
                string G = Convert.ToString(color.G, 16);
                if (G == "0")
                    G = "00";
                string B = Convert.ToString(color.B, 16);
                if (B == "0")
                    B = "00";
                string HexColor = "#" + R + G + B;
                return HexColor;
            }

        public string ForeColor

        {

            set

            {

                 //value = #ab364f

                int r = Convert.ToInt32("0x" + value.Substring(1, 2),16);

                int g = Convert.ToInt32("0x" + value.Substring(3, 2),16);

                int b = Convert.ToInt32("0x" + value.Substring(5, 2),16);

                txtUrl.ForeColor = System.Drawing.Color.FromArgb(r,g,b);

            }

     }

    利用递增的数字返回循环渐变的颜色的js代码

    function gCL(i){ 
    var f=parseInt((i%15)/5); 
    i=i%15%5; 
    switch(f){ 
    case 0:return "#"+cS2(255-i*51)+cS2(i*51)+"00"; 
    case 1:return "#00"+cS2(255-i*51)+cS2(i*51); 
    case 2:return "#"+cS2(i*51)+"00"+cS2(255-i*51); 


    function cS2(i) { 
    var s=i.toString(16); 
    return ("00"+s).substr(s.length); 
    }

    使用gCL就可以利用递增的数字返回由红到绿到蓝的渐变颜色了。渐变效果如下,共15种颜色,循环渐变:

    http://kingoa.net/WEBPROGRAM/JAVASCRIPT/2010/0326/14021.html

     

    CSS颜色值的三种形式:名称、RGB、十六进制

    从理论上说,CSS可以处理的颜色数量大概是:16,777,216。够用了吧。如何表现这些颜色呢,主要是通过三种形式:

    1、名称 如:blue

    2、RGB 如:255,0,0

    3、十六进制 如:#ff6600

    如果我们要设置红色,可以是下面的形式:

    名称:red

    RGB:#ff0000

    RGB:rgb(100%,0%,0%)

    十六进制:#ff0000

    十六进制:#f00

    CSS有十七个预先确定的颜色,它们是:

    aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, orange, purple, red, silver, teal, white, yellow.

    (注意:transparent 透明 也是一个正确的值。)

    rgb的三个值都是从0到255,0是最低级,255是最高级,这些值同样可以是百分比。

    十六进制三或六个数字长度前面带上#字符,三个长度是六个的压缩形式(短16进制),比如#00f是#0000ff的压缩,#c30是#cc3300。三位数很好理解,像rgb,第一个是红色,第二个是绿色,第三个蓝色。但六位数可以实现更多的颜色控制。

    由于web安全色只使用了00,33,66,99,cc,ff,所以我们可以使用短16进制颜色表示web安全色,0,3,6,9,c,f和长16进制可以使用的颜色数值是等价的,一共是6×6×6=216种。最初的计算机(8位计算机)上只能定义256种颜色,所以当时Windows和Macintosh运行于256色,在Netscape Navigator和Microsoft Internet Explorer上共有的颜色就被称为Web安全色.如果颜色不在这216种颜色的范围内,计算机就有可能在显示颜色的时候产生抖动现象。(抖动就是由于操作系统为了尽可能的表现某种颜色,混合两种颜色而产生的)

  • 相关阅读:
    Python 音视频方面资源大全
    MD5( 信息摘要算法)的概念原理及python代码的实现
    base64编解码学习及python代码实现
    操作系统下cache的几个概念
    scp 跨机远程拷贝
    VIM -小技巧汇总
    python中的进制转换
    linux目录跳转快捷方式——z武器
    ubuntu 16.04 清空log文件的方法
    【linux】crontab失效
  • 原文地址:https://www.cnblogs.com/kingangWang/p/2466456.html
Copyright © 2020-2023  润新知