![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Класс Pen
Pen - класс пера, имеющий два основных атрибута: цвет и ширину. Пример использования, в проекте типа Windows Forms Application внутри любой функции (например OnPaint или функции – обработчике события нажатия кнопки) введите следующий текст: System.Drawing.Graphics gr = this.CreateGraphics(); System.Drawing.Pen blue = new Pen(Color.Blue); // синее, ширина: 1 System.Drawing.Pen red = new Pen(Color.Red, 2); // красное, ширина: 2 System.Drawing.Pen green = Pens.Green; // зелёное, ширина: 1 gr.DrawRectangle(blue, 20, 20, 20, 20); // рисуем прямоугольники gr.DrawRectangle(red, 40, 20, 20, 20); gr.DrawRectangle(green, 60, 20, 20, 20); Общий вид функций создания графических примитивов: DrawRectangle(устройство вывода(класса Pen или Brush), х1, y1, x2, y2); где х1, y1 – координаты верхнего левого угла, x2, y2 – координаты правого нижнего угла. DrawLine(устройство вывода(класса Pen или Brush), х1, y1, x2, y2); где х1, y1 – координаты начала линии, x2, y2 – координаты конца линии DrawEllipse(устройство вывода(класса Pen или Brush), x, y, высота, ширина); где х1, y1 – координаты центра. DrawPie(устройство вывода(класса Pen или Brush), x, y, высота, ширина, начальный угол, насколько градусов повернуть почасовой стрелке); Чтобы получить сектор изображенный на рисунке необходимо задать значение начального угла 180, значение насколько градусов повернуть – 90
DrawArc(устройство вывода(класса Pen или Brush), x, y, высота, ширина, начальный угол, насколько градусов повернуть почасовой стрелке); DrawString(строка или строковая переменная, шрифт, кисть, x, y, [формат вывода текста]); x, y - координаты верхнего левого угла текста DrawPolygon (устройство вывода (класса Pen или Brush), массив точек типа Point [ ]);
Таблица 9.5.Свойства класса Реn
Кроме класса Реn в GDI+ также можно использовать коллекцию заранее определенных перьев (коллекция Pens). При помощи статических свойств коллекции Pens можно мгновенно получить уже готовое перо, без необходимости создавать его вручную. Однако все типы Реn, которые создаются при помощи коллекции Pens, имеют одну и ту же одинаковую ширину, равную 1. Чтобы установить перо для вывода линий определенного стиля необходимо подключить в начале кода using System.Drawing.Drawing2D; затем создавая перо Pen A.DashStyle = DashStyle. тип линии; Таблица 9.6.Значения перечисления DashStyle
Для того чтобы проиллюстрировать приведенную выше информацию, создайте приложение вставьте в класс Form1 следующий текст программы. public Form1() { InitializeComponent(); this.Paint += new System. Windows. Forms. PaintEventHandler(Form1_Paint); } private void Form1_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; // Создаем большое перо синего цвета Pen bluePen = new Pen(Color.Blue, 20); // Создаем еще одно перо при помощи заготовок из коллекции Pens Pen pen2=Pens.Firebrick; // Выводим при помощи созданных перьев геометрические фигуры g.DrawEllipse(bluePen, 10, 10, 100, 100); g.DrawLine(pen2, 10, 130, 110, 130); g.DrawPie(Pens.Black, 150, 10, 120, 150, 0, 90); //Выводим многоугольник пурпурного цвета Pen pen3=new Pen(Color.Purple, 5); pen3.DashStyle = DashStyle.DashDot; g.DrawPolygon(pen3, new Point[] { new Point (30, 140), new Point(265, 200), new Point(300, 225), new Point(190, 190), new Point(80, 330), new Point(20, 180)}); // Добавляем прямоугольник со вписанным текстом Rectangle r = new Rectangle(150, 10, 230, 60); g.DrawRectangle(Pens.Blue, r); g.DrawString(" Геометрические фигуры", new Font(" Arial", 12), Brushes.Black, r); }
|