Иллюстрированный самоучитель по VB.NET

       

Простейший вывод


Рассмотрим очень простой пример графического вывода. Следующая программа выводит растровый файл sample.bmp (находящийся в каталоге \bin решения) в левом верхнем углу формы:

Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs)

MyBase.OnPaint(e)

Dim g As Graphics

g = e.Graphics()

g.Draw!mage(New Bitmap("sample.bmp"). 0. 0)

g.Dispose()

End Sub

Обратите внимание на вызов Dispose в строке, выделенной жирным шрифтом. Поскольку сборщик мусора не освобождает графические контексты, привыкайте делать это самостоятельно в конце процедуры Paint.

Напоминаем: если объект поддерживает метод Dispose, этот метод следует вызвать по завершении работы с объектом.

Следующий этап — рисование линий, прямоугольников и других фигур. Перед операциями такого рода следует получить объект пера, который является экземпляром класса System.Drawing.Pen. Самый распространенный конструктор класса Реп имеет следующий синтаксис:

Public Sub New(Color.Single)

Первый параметр определяет цвет пера (и входит в перечисляемый тип System. DrawingColor), а второй определяет толщину пера (другие конструкторы также позволяют задать кисть для заполнения внутренней части объекта). Например, чтобы нарисовать прямоугольник, вы определяете его размеры и вызываете g. DrawRectangle. Результат выполнения следующей программы показан на рис. 8.22:



Protected Overrides Sub OnPaint(ByVa1 e As PaintEventArgs)

MyBase.OnPaint(e)

Dim g As Graphics

g = e.Graphics()

Dim myPen As New PerKColor,Purple. 6)

Dim aRectangle As New Rectangle(Me.ClientRectangle.Width \4,_

Me.ClientRectangle.Height \ 4. . Me.ClientRectangle.Height \2,_

Me.ClientRectangle.Width \ 2))

g.DrawRectangle(myPen,aRectangle)

g.Dispose()

End Sub

Рис. 8.22. Результат вызова DrawRectangle: прямоугольник в рамке толщиной 6 пикселов



Содержание раздела