C# :更改颜色按钮实现

by MN-SOFT.COM 3. 三月 2011 13:45
private void button_Click(object sender, EventArgs e)
    {
        ColorDialog color = new ColorDialog();
        if (color.ShowDialog() == DialogResult.OK)
        {
            Button button = (Button)sender;

            int r, g, b;
            r = color.Color.R;
            g = color.Color.G;
            b = color.Color.B;

            // RGB 色值
            string rgbString = r.ToString("X2") + g.ToString("X2") + b.ToString("X2");

            //颜色字符串 Alpha + RGB
            string colorString = color.Color.A.ToString("X2") + rgbString;

            //按钮显示文本
            button.Text = "#" + rgbString;

            //按钮背景色
            button.BackColor = color.Color;

            //按钮字体颜色(ARGB),为按钮背景色的反色
            string foreColorString
            = "FF" + (255 - r).ToString("X2")
            + (255 - g).ToString("X2")
            + (255 - b).ToString("X2");

            //按钮字体颜色
            button.ForeColor =
            System.Drawing.Color.FromArgb(int.Parse(
            foreColorString, System.Globalization.NumberStyles.HexNumber));
        }
    }

Creative Commons License 本文基于署名-非商业性使用-相同方式共享 3.0 Unported许可协议发布,欢迎转载或创作演绎作品,但是必须保留本文的署名迷你软件(包含链接),具体操作方式可参考此处。如您有任何疑问或者授权方面的协商,请给我留言

Tags:

.NET

评论 (2) -

Supra Footwear
2011-3-15 9:56:51 #

很好~

回复

涡街流量计
2011-12-14 15:26:00 #

能够很多的事情可以改变下。

回复

添加评论




biuquote
  • 评论
  • 在线预览
Loading






关于

迷你软件为您提供免费绿色的软件产品。

联系邮箱:admin@mn-soft.com

RecentComments

Comment RSS