Программирование мобильных устройств на платформе .NET Compact Framework (Салмре) - страница 579


> 'Рисуем несколько фигур желтым

> Dim yellowBrush As System.Drawing.Brush

> yellowBrush = New System.Drawing.SolidBrush( _

>  System.Drawing.Color.Yellow)

> gfx.FillEllipse(yellowBrush, 130, 4, 40, 70)

> gfx.FillRectangle(yellowBrush, 5, 20, 110, 30)

> gfx.FillEllipse(yellowBrush, 60, 75, 130, 20)


> 'Очистить

> yellowBrush.Dispose()

> gfx.Dispose()

>End Sub


>'-----------------------------------------------------------------

>'Устанавливает размеры и местоположение PictureBox с левой стороны

>'-----------------------------------------------------------------

>Private Sub SetPictureBoxDimensions()

> PictureBox1.Width = bitmap_dx

> PictureBox1.Height = bitmap_dy

> PictureBox1.Left = 20

>End Sub


>'---------------------------------------------------------------------

>'ОБРАБОТЧИК СОБЫТИЙ: Отобразить изображение ЗАДНЕГО ПЛАНА в PictureBox

>'---------------------------------------------------------------------

>Private Sub buttonDrawBackground_Click(ByVal sender As Object, _

> ByVal e As System.EventArgs) Handles buttonDrawBackground.Click

> SetPictureBoxDimensions()

> CreateBackground()

> PictureBox1.Image = m_backgroundBitmap

>End Sub


>'-----------------------------------------------------------------------

>'ОБРАБОТЧИК СОБЫТИЙ: Отобразить изображение ПЕРЕДНЕГО ПЛАНА в PictureBox

>'-----------------------------------------------------------------------

>Private Sub buttonDrawForeground_Click(ByVal sender As Object, _

> ByVal e As System.EventArgs) Handles buttonDrawForeground.Click

> SetPictureBoxDimensions()

> CreateForeground()

> PictureBox1.Image = m_foregroundBitmap

>End Sub


>'-----------------------------------------------------------------------

>'ОБРАБОТЧИК СОБЫТИЙ: Наложить изображение ПЕРЕДНЕГО ПЛАНА на изображение

>' ЗАДНЕГО ПЛАНА. Использовать МАСКУ ПРОЗРАЧНОСТИ, чтобы желтый

>' цвет в изображении ПЕРЕДНЕГО ПЛАНА стал прозрачным и через

>' него можно было видеть содержимое изображения

>' ЗАДНЕГО ПЛАНА

>'------------------------------------------------------------------------

>Private Sub buttonDrawBackgroundPlusForeground_Click(ByVal _

> sender As Object, ByVal e As System.EventArgs) _

> Handles buttonDrawBackgroundPlusForeground.Click

> SetPictureBoxDimensions()

> CreateForeground()

> CreateBackground()

> 'Получить объект Graphics изображения ЗАДНЕГО ПЛАНА, поскольку

> 'именно поверх него мы собираемся рисовать.

> Dim gfx As System.Drawing.Graphics

> gfx = System.Drawing.Graphics.FromImage(m_backgroundBitmap)


> '-------------------------------------------------------

> 'Создать класс ImageAttributes. Этот класс позволяет нам

> 'задать прозрачный цвет на наших операций рисования