Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Lektsia_6VP

.pdf
Скачиваний:
7
Добавлен:
27.05.2015
Размер:
1.04 Mб
Скачать

4) Через объект PaintEventArgs при обработке события Paint формы или элемента управления:

private void pictureBox1_Paint(object sender, PaintEventArgs e)

{

Graphics g = e.Graphics;

g.DrawEllipse(new Pen(Color.Red, 3), 0, 0, 200, 100);

}

11

Структура Color

Цвет может быть выбран стандартный, например:

Color.Red; // Красный цвет Color.Green; // Зелёный цвет Color.Blue; // Синий цвет

А так же, может быть создан произвольный:

Color c = Color.FromArgb(255, 0, 128);

или

Color c = Color.FromArgb(alpha, red, green, blue);

12

Перья (класс Pen)

Конструкторы:

public Pen(Color); // Цвет задан объектом класса Color public Pen(Color, float); // так же задана толщина пера public Pen(Brush); // Цвет задан объектом класса Brush public Pen(Brush, float); // так же задана толщина пера

Pen pen = Pens.Blue; // стандартное синее перо

13

Основные свойства объекта Pen

Свойство

Описание

 

 

 

 

Width

Ширина линии

 

 

 

 

Brush

Кисть, используемая пером

 

 

 

 

Color

Цвет пера

 

 

 

 

DashStyle

Стиль пунктирных и штрих-пунктирных линий

 

 

 

DashCup

Вид точек и штрихов пунктирных и штрих-пунктирных линий

 

 

 

DashOffset

Расстояние от начала линии до начала штриха

 

 

 

DashPattern

Массив шаблонов для создания произвольных штрихов и

 

пробелов штриховых и штрих-пунктирных линий

 

 

 

 

StartCup и EndCup

Стиль концов линий

 

 

 

 

LineCap

Формы концов линий

 

 

 

 

LineJoin

Стиль соединения концов двух различных линий

 

 

 

MiterLimit

Предельная толщина в области соединения остроконечных

 

линий

14

 

 

 

 

 

Кисти (Brush)

Brushes; // сплошная

SolidBrush; // сплошная

HatchBrush; // заштрихованная

TextureBrush; // текстурная

LinearGradientBrush; // линейная градиентная

PathGradientBrush

Простейший способ задания кисти:

Brush b = Brushes.Blue;

15

Шрифты (Font)

Простейший конструктор:

public Font(string, float); // имя шрифта, размер

Простейший способ задания шрифта:

Font f = new Font("Arial", 14);

16

Методы и свойства класса Graphics

• Draw*

• Fill*

ТЕКСТ

 

 

17

Линия (DrawLine)

Версии метода DrawLine:

public void DrawLine(Pen, Point, Point);

public void DrawLine(Pen, PointF, PointF);

public void DrawLine(Pen, int, int, int, int);

public void DrawLine(Pen, float, float, float, float);

Простейший способ задания линий:

Graphics g = e.Graphics;

g.DrawLine(Pens.Blue, new Point(10, 15), new Point(50, 75)); g.DrawLine(new Pen(Brushes.Black, 2), 10, 15, 50, 75);

18

Набор линий (DrawLines)

Graphics g = e.Graphics;

Pen pen = new Pen(Brushes.Blue, 5); Point[] p = new Point[3];

p[0] = new Point(0, 0); p[1] = new Point(200, 100); p[2] = new Point(50, 170); g.DrawLines(pen, p);

(Всё это пишется внутри pictureBox1_Paint !)

19

Набор линий (DrawLines)

Сглаживание:

g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;

20

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]