Вход/Регистрация
Программирование мобильных устройств на платформе .NET Compact Framework
вернуться

Салмре Иво

Шрифт:

myBitmap.Height - 1)

'Создать сплошную кисть

Dim myBrush As System.Drawing.Brush

'-----------------------

'Нарисовать текст кистью

'-----------------------

myBrush = New System.Drawing.SolidBrush( _

System.Drawing.Color.Black)

'Примечание: мы используем объект Font из формы

myGfx.DrawString("Привет!", Me.Font, myBrush, 2, 10)

'------------------------------

'Важно! Очистить все после себя

'------------------------------

myGfx.Dispose

myPen.Dispose

myBrush.Dispose

'-------------------------------------------------------------------

'Указать объекту pictureBox, на необходимость отображения растрового

'изображения, которое мы только что создали и нарисовали.

'-------------------------------------------------------------------

PictureBox1.Image = myBitmap

End Sub

Листинг 11.7. Создание объекта Graphics для формы

'----------------------------------------------------------

'Создает объект Graphics для формы и осуществляет рисование

'----------------------------------------------------------

Private Sub Button1_Click(ByVal sender As System.Object, _

ByVal e As System.EventArgs) Handles Button1.Click

'Создать объект Graphics для формы

Dim myGfx As System.Drawing.Graphics

myGfx = Me.CreateGraphics

'Создать кисть

Dim myBrush As System.Drawing.Brush

myBrush = New System.Drawing.SolidBrush( _

System.Drawing.Color.DarkGreen)

'Заполнить прямоугольник

myGfx.FillRectangle(myBrush, 4, 2, 60, 20)

'-------------------------

'Важно: Выполнить очистку!

'-------------------------

myBrush.Dispose

myGfx.Dispose

End Sub

Листинг 11.8. Подключение к функции Paint формы

'Кисти, которые мы хотим кэшировать, чтобы избавить себя от необходимости

'все время создавать их и уничтожать

Private m_brushBlue As System.Drawing.Brush

Private m_brushYellow As System.Drawing.Brush

'Ради интереса подсчитаем, сколько раз осуществлялся вызов

Private m_paintCount As Integer

'-----------------------------------------------------------------------------

'Мы перекрываем обработчики событий Paint наших базовых классов. Это означает,

'что каждый раз, когда форма вызывается для перерисовки самой себя, будет

'вызываться эта функция.

'-----------------------------------------------------------------------------

Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs)

'ВАЖНО: Вызвать базовый класс и дать ему возможность

'выполнить всю необходимую работу по рисованию

MyBase.OnPaint(e)

'Увеличить на 1 значение счетчика вызовов

m_paintCount = m_paintCount + 1

'--------------------------------------------------------------------------

'Важно:

'Вместо того чтобы создавать объект Graphics, мы получаем его

'на время данного вызова. Это означает, что освобождать память путем вызова

'метода .Dispose объекта - не наша забота

  • Читать дальше
  • 1
  • ...
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: