c#颜色Color,systemcolor还有什么类
时间: 2024-01-08 22:03:06 浏览: 134
除了 Color 和 SystemColors,C# 中还有其他表示颜色的类,比如 Brush、Pen 等。它们都是 System.Drawing 命名空间中的类,用于在界面中绘制图形或填充颜色等。
1. Brush 类
Brush 类用于填充颜色或图案。它是一个抽象类,不能直接实例化,需要使用其子类来创建具体的 Brush 对象,比如 SolidBrush、LinearGradientBrush、TextureBrush 等。
使用 Brush 类填充颜色很简单,只需创建一个具体的 Brush 对象,然后调用 Graphics 对象的 FillRectangle、FillEllipse 等方法即可。例如:
```
// 创建一个红色的 SolidBrush 对象
SolidBrush redBrush = new SolidBrush(Color.Red);
// 在界面上绘制一个矩形,并填充为红色
Graphics g = this.CreateGraphics();
g.FillRectangle(redBrush, new Rectangle(0, 0, 100, 100));
```
2. Pen 类
Pen 类用于绘制线条或边框。它也是一个抽象类,需要使用其子类来创建具体的 Pen 对象,比如 SolidPen、DashPen、DotPen 等。
使用 Pen 类绘制线条或边框也很简单,只需创建一个具体的 Pen 对象,然后调用 Graphics 对象的 DrawLine、DrawRectangle、DrawEllipse 等方法即可。例如:
```
// 创建一个蓝色的 SolidPen 对象
Pen bluePen = new Pen(Color.Blue);
// 在界面上绘制一个矩形的边框
Graphics g = this.CreateGraphics();
g.DrawRectangle(bluePen, new Rectangle(0, 0, 100, 100));
```
需要注意的是,使用 Brush 或 Pen 绘制图形或填充颜色时,需要及时释放资源,避免内存泄漏。可以使用 using 语句来自动释放资源,例如:
```
using (SolidBrush redBrush = new SolidBrush(Color.Red))
{
// 在界面上绘制一个矩形,并填充为红色
Graphics g = this.CreateGraphics();
g.FillRectangle(redBrush, new Rectangle(0, 0, 100, 100));
}
```
阅读全文