На этом шаге мы рассмотрим построение ломаной линии.
Метод DrawLines рисует ломаную линию. В качестве параметров методу передается карандаш (Pen) и массив типа Point, элементы которого содержат координаты узловых точек линии. Метод рисует ломаную линию, последовательно соединяя точки, координаты которых находятся в массиве: первую совторой, вторую с третьей, третью с четвертой и т. д. Например, следующий фрагмент кода рисует ломаную линию, состоящую из четырех звеньев.
array<Point>^ p; // массив точек p = gcnew array<Point>(5); p[0].X = 10; p[0].Y =50; p[1].X = 20; p[1].Y =20; p[2].X = 30; p[2].Y =50; p[3].X = 40; p[3].Y =20; p[4].X = 50; p[4].Y =50; e->Graphics->DrawLines(Pens::Green,p);
Рис.1. Ломаная линия
Текст приложения:
Form1(void) { InitializeComponent(); // //TODO: добавьте код конструктора // p = gcnew array<Point>(5); p[0].X = 10; p[0].Y =50; p[1].X = 20; p[1].Y =20; p[2].X = 30; p[2].Y =50; p[3].X = 40; p[3].Y =20; p[4].X = 50; p[4].Y =50; // Задаем функцию обработки события Paint this->Paint += gcnew System::Windows::Forms::PaintEventHandler(this, &Form1::drawLines); } . . . . . private: array<Point>^ p; // массив точек void drawLines(System::Object^ sender, System::Windows::Forms::PaintEventArgs^ e) { e->Graphics->DrawLines(Pens::Green,p); }
Метод DrawLines можно использовать для вычерчивания замкнутых контуров. Для этого первый и последний элементы массива должны содержать координаты одной и той же точки:
Рис.2. Замкнутая ломаная линия
На следующем шаге мы рассмотрим построение прямоугольника.