您的位置:首页 > 编程语言 > C#

Panel设置透明属性 C#中颜色的使用

2013-04-18 16:46 369 查看
http://blog.csdn.net/lgyrmetal/article/details/6342164

透明Panel的实现方法。通常只需要将backcolor设置为transparent即可,但是此时panel的颜色会与form或父panel颜色一致,往往这并不是我们需要的。

此时我们可以用另一种方法,panel1.BackColor = Color.FromArgb(65, 204, 212, 230);通过调整颜色值,即实现了panel透明,又实现了两个panel颜色不同的效果。

.NET框架中的颜色基于4种成份,透明度,红,绿和蓝.每一种成份都是一个字节,在0--255之间取值.
Color结构代表颜色,当类和方法要作用于颜色的时候,它们作用于Color结构的一个实例.Color结构通过表态属性公开了140个命名颜色,这些属性返回预先创建的Color对象.
Color newColor = Color.Red;

创建Color实例的另一种方式是调用静态FromArgb 方法,该方法有4个重载方式.
1.创建Color实例的参数 成份为4种颜色成份
Color c = Color.FromArgb (100,200,200,200);
第1个参数 为透明度(alpha)参数 ,其后为红,绿和蓝.
2.只接受红,绿,蓝三种原色,透明度设置为默认,即完全不透明.
Color c = Color.FromArgb (200,200,200);
3.从一个现在的Color对象创建一个新的Color实例,只修改透明度成份
Color c = Color.FromArgb (100,Color.PowderBlue);
4.用一个形式为AARRGGBB的组合整数创建一个Color实例
Color c = Color.FromArgb (0x64C8C8FF);

还可以通过调用静态FromKnownColor方法来创建Color对象.它接受KnownColor枚举值作为参数 .
Color c = Color.FromKnownColor(KnownColor.PowderBlue);

再有一个方式就是调用静态FromName方法,它接受一个字符串参数 ,这个字符串必须包含一个KnownColor枚举值的名称.
Color c = Color.FromName("PowderBlue");

Color结构有4种颜色成份的只读属性,A,R,G,B.可以使用这些属性提取各种成份,并调配成新的颜色.
其他一些非静态属性包含:
IsNamedColor Boolean值,如果颜色值在这140个命名颜色中时,值为true,否则为false.
IsKnownColor Boolean值,如果颜色值是KnownColors枚举的颜色之一时,值为true
IsSystemColor Boolean值,如果颜色值是SystemColors类的属性值之一时,值为true.

系统颜色
SystemColors类封装了26种系统颜色,这个类可以通过静态属性使用颜色.
Color c = SystemColors.WindowText;

KnownColor枚举包含了SystemColors类的26种颜色值,及Color结构的静态属性所公开的140种颜色值
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: