* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна!
Рисование простых фигур
8 февраля 2009
Класс Graphics поддерживает ряд методов, позволяющих рисовать простые фигуры (таблица 7-3). Любым методам для рисования контурных фигур необходим действительный объект Реп, а методам, рисующим закрашенные фигуры, — действительный объект Brush. Кроме того, при вызове этим методам следует передать любые требуемые им объекты. Так, например, можно нарисовать прямоугольник средствами метода Draw Rectangle:
Visual Basic .NET Создать объект Rectangle. Dim my'Rec tangle As New Rectangle(0, 0, 30, 20) Создать объект Graphics, связанный с формой. Dim g As Graphics - Me.CreateGraphics() Нарисовать прямоугольник системным пером, g.DrawRectangle(SystemPens.ControlDark, myRectangle) Освободить ресурсы, занятые объектом Graphics. g.DisposeO Visual C# // Создать объект Rectangle. Rectangle myRectangle = new RectanglefO, 0, 30, 20); // Создать объект Graphics, связанный с формой, Graphics g = this.CreateGraphicsO; // Нарисовать прямоугольник системным пером. g.DrawRectangle(SystemPens,ControlDark, myRectangle); // Освободить ресурсы, занятые объектом Graphics. g.DisposeO; Закончив работу с объектом Graphics, обязательно вызовите его метод Dispose. В противном случае быстродействие приложения может снизиться, так как этот объект использует много системных ресурсов. Аналогично следует поступать с лю- быми созданными вами объектами Реп и Brush. Следующий пример кода показыва- ет, как нарисовать закрашенный эллипс и правильно освободить объекты Brush и Graphics: Visual Basic .NET Dim myBrush As New SolidBrush(Color.MintCream) Dim g As Graphics = Me.CreateGraphicsQ Нарисовать эллипс, вписанный в прямоугольник, Dim myRectangle As New Rectangle(0: 0, 30, 20) g.FillEllipsefmyBrush, myRectangle) Освободить ресурсы объектов Graphics и Brush, g. DisposeO myBrush. DisposeO Visual C# SolidBrush myBrush = new SolidBrush(Color.MintCrearn); Graphics g = this.CreateGraphicsO; // Нарисовать эллипс, вписанный в прямоугольник. Rectangle inyRectangle = new Rectancle(0, 0, 30, 20): g.FillEllipse(myBrush, myRectangle); // Освободить ресурсы обьектов Graphics и Brush. g.DisposeO; myBrush.Dispose{); > Как нарисовать простую фигуру 1. Создайте объект Graphics, представляющий область, в которой вы хотите нари- совать фигуру. 2. Создайте необходимые вспомогательные объекты. К ним относятся объекты, за- дающие координаты и размеры фигур, например Point или Rectangle, атакже объ- екты Реп (для рисования контурных фигур) и Brush (для закрашенных фигур). 3. Вызовите соответствующий метод объекта Graphics. 4. Освободите все ресурсы, занятые созданными объектами Реп или Brush. 5. Освободите ресурсы объекта Graphics.