Контур прямоугольника рисуется с помощью метода DrawRectangle. Прямоугольник задаётся координатами левого верхнего угла и размерами – шириной и высотой. При этом может быть предварительно создан объект Rectangle, либо явно заданы его характеристики, например:
Visual Basic .Net:
Dim g As Graphics
g = Me.CreateGraphics
Dim redpen As Pen
redpen = New Pen(Color.Red, 3)
g.DrawRectangle(redpen, 10, 10, 200, 100)
Visual C#:
Graphics g;
g = this.CreateGraphics();
Pen redpen;
redpen = new Pen(Color.Red, 3);
g.DrawRectangle(redpen, 10, 10, 200, 100);
Заполненный прямоугольник создаётся с помощью метода FillRectangle. При этом первым аргументом является объект Brush, например:
Visual Basic .Net:
Dim g As Graphics
g = Me.CreateGraphics
Dim redbrush As SolidBrush
redbrush = New SolidBrush(Color.Red)
g.FillRectangle(redbrush, 10, 10, 200, 100)
Visual C#:
Graphics g;
g = this.CreateGraphics();
SolidBrush redbrush;
redbrush = new SolidBrush(Color.Red);
g.FillRectangle(redbrush, 10, 10, 200, 100);
Эллипсы создаются с помощью методов DrawEllipse и FillEllipse. Эллипс определяется, как овал, вписанный в прямоугольник. При этом также может быть предварительно создан объект Rectangle, либо явно заданы его характеристики. Синтаксис данных методов аналогичен синтаксису аналогичных методов для прямоугольников.
Сегмент эллипса может быть создан с помощью методов DrawPie и FillPie. Он состоит из дуги и двух прямоугольных отрезков, соединяющих конечные точки дуги с центром круга или эллипса. Данные методы, кроме характеристик пера или кисти и прямоугольника, в который вписан эллипс, принимают два дополнительных аргумента – начальный угол и внутренний угол сегмента. Углы измеряются в градусах, их значения увеличиваются по часовой стрелке. Угол, равный 0, соответствует горизонтальной оси координат, значение внутреннего угла прибавляется к значению начального угла, например:
Visual Basic .Net:
Dim g As Graphics
g = Me.CreateGraphics
Dim redpen As Pen
redpen = New Pen(Color.Red, 3)
g.DrawPie(redpen, 10, 10, 200, 200, 0, 60)
Visual C#:
Graphics g;
g = this.CreateGraphics();
Pen redpen;
redpen = new Pen(Color.Red, 3);
g.DrawPie(redpen, 10, 10, 200, 200, 0, 60);
Многоугольник представляет собой замкнутую ломанную линию. Он создается с помощью методов DrawPolygon и FillPolygon. Аргументы и синтаксис данных методов аналогичны аргументам и синтаксису методов DrawLines, например:
Visual Basic .Net:
Dim g As Graphics
g = Me.CreateGraphics
Dim redpen As Pen
redpen = New Pen(Color.Red, 3)
Dim points As Point() = {New Point(10, 10), New Point(10, 100), _
New Point(200, 50), New Point(250, 300)}
g.DrawPolygon(redpen, points)
Visual C#:
Graphics g;
g = this.CreateGraphics();
Pen redpen;
redpen = new Pen(Color.Red, 3);
Point[] points = { new Point(10, 10), new Point(10, 100), new Point(200, 50), new Point(250, 300) };
g.DrawPolygon(redpen, points)
Начальную точку в конце массива повторять не обязательно, данный метод автоматически соединит первую и последнюю точки массива.