C#:按钮颜色设置

    private void button1_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));
        }
    }

 

posted on 2010-04-19 20:09  迷你软件  阅读(4129)  评论(0编辑  收藏  举报

本网站绝大部分资源来源于Internet,本站所有作品版权归原创作者所有!!如有以下内容:章节错误、非法内容、作者署名出错、版权疑问、作品内容有违相关法律等请及时与我联系. 我将在第一时间做出响应!本站所有文章观点不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。