* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна!
Объекты Color, Brush и Pen
8 февраля 2009
Объекты Color. Brush и Реп формируют облик графического элемента. Объект Brush применяют для отображения закрашенных фигур, Реп — для отображения прямых и дуг, а объект Color задает цвет фигуры.
Color Структура Color располагается в пространстве имен System.Drawing и представляет некоторый цвет. Каждый цвет определяется четырьмя значениями: Alpha, представ- ляющим прозрачность, и тремя значениям Red, Green и Blue из диапазона 0-255. Чтобы создать новый цвет, необходимо передать эти значения методу Color.From- Argb: Visual Basic .NET Dim myColor As Color nyColor - Color.FromArgb(123, 255, 12, 43) Visual C# Color ir.yColor; nyColor = Color,FromArgb(128, 255, 12, 43); Если вы не используете эффект прозрачности, параметр Alpha можно пропус- тить, указав только значения Red, Green и Blue: Visual Basic .NET Visual C# Кроме того, множество стандартных цветов доступно в .NET Framework в виде именованных цветов: Visual Basic .NET Dim myColor As Color myColor = Color.Tomato Visual C# Color myColor; myColor = Color.Tomato; Brush Объект Brush представляет кисть и служит для рисования закрашенных фигур. Все разновидности кистей являются потомками абстрактного класса Brush и позволяют создавать закрашенные фигуры различного вида. Типы кистей и пространства имен, в которых расположены соответствующие объекты, описаны в таблице 7-5. Таблица 7-5. Типы кистей Тип Пространство имен Описание SolidBrush TextureBrush System. Drawing System. Drawing HatchBrush System. Drawing. Drawing2D Linear Gradient Brush System. Drawing. Draw ing2D Path Gradient Brush System.Drawing. Drawing2D Сплошная одноцветная кисть Кисть для заливки замкнутого контура изображением Кисть для узорной заливки Кисть для заливки двухцветным градиентом Кисть, использующая сложную градиентную запивку Для создания объекта SolidBrush достаточно указать цвет, например: Visual Basic .NET Dim myBrush As New SolidBrushfColor.PapayaWhip) Visual C# SolidBrush myBrush - new SolidBrush(Color.PapayaWhip}; Конструкторы других кистей сложнее и требуют дополнительных параметров. Например, для создания кисти типа TextureBrush необходим объект Image, а для LinearGradientBrush — два цвета и ряд других параметров, в зависимости от типа выбранного конструктора. Реп Объекты Реп представляют перья, они предназначены для рисования прямых и дуг, а также для применения к контурным фигурам различных графических эффектов. Существует только один класс Реп, и он является запечатанным (sealed). Создать объект класса Реп несложно, достаточно указать его цвет: Visual Basic .NET Dim myPen As New Pen(Color.BlanchedAlmond) Visual C# Pen myPen = new Pen(Color.BlanchedAlmond); В результате исполнения предыдущего кода создается перо, ширина которого по умолчанию равна 1 пикселу. Ширину задают в конструкторе объекта Реп следу- ющим образом; Visual Basic .NET Dim myPen As New Pen(Color.Lime, 4J Visual C# Pen rnyPen - new Pen(Color. Lirne, 4): Этот код назначает ширину пера, равную четырем пикселам. Перо можно со- здать и на основе имеющейся кисти, вид таких перьев будет согласован со стилем интерфейса. Это особенно удобно при использовании сложных теней и других эф- фектов. Следующий пример демонстрирует создание пера на основе имеющейся кисти myBrush: Visual Basic .NET Dim myPen As New Pen(myBrush) Visual C# Pen rnyPen - new Pen{myBrush); При создании пера на основе кисти также разрешается задавать ее ширину.