Программирование мобильных устройств на платформе .NET Compact Framework
Шрифт:
'----------------------------------------------------------------
'Размеры наших битовых образов и экранного изображения PictureBox
'----------------------------------------------------------------
Const bitmap_dx As Integer = 200
Const bitmap_dy As Integer = 100
'-------------------------------------------------
'Создает и прорисовывает изображение заднего плана
'-------------------------------------------------
Private m_backgroundBitmap As System.Drawing.Bitmap
Sub CreateBackground
If (m_backgroundBitmap Is Nothing) Then
m_backgroundBitmap = New Bitmap(bitmap_dx, bitmap_dy)
End If
'Делаем битовую карту белой
Dim gfx As System.Drawing.Graphics
gfx = System.Drawing.Graphics.FromImage(m_backgrourdBitmap)
gfx.Clear(System.Drawing.Color.White)
'Рисуем текст черным
Dim myBrush As System.Drawing.Brush
myBrush = New System.Drawing.SolidBrush( _
System.Drawing.Color.Black)
Dim у As Integer
For у = 0 To bitmap_dy Step 15
gfx.DrawString("I am the BACKGROUND IMAGE...hello", Me.Font, myBrush, 0, y)
Next
'Очистить
myBrush.Dispose
gfx.Dispose
End Sub
'-------------------------------------------------
'Создает и прорисовывает изображение заднего плана
'-------------------------------------------------
Private m_foregroundBitmap As System.Drawing.Bitmap
Sub CreateForeground
If (m_foregroundBitmap Is Nothing) Then
m_foregroundBitmap = New Bitmap(bitmap_dx, bitmap_dy)
End If
'Делаем всю битовую карту синей
Dim gfx As System.Drawing.Graphics
gfx = System.Drawing.Graphics.FromImage(m_foregroundBitmap)
gfx.Clear(System.Drawing.Color.Blue)
'Рисуем несколько фигур желтым
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
'-----------------------------------------------------------------------
'ОБРАБОТЧИК СОБЫТИЙ: Наложить изображение ПЕРЕДНЕГО ПЛАНА на изображение
' ЗАДНЕГО ПЛАНА. Использовать МАСКУ ПРОЗРАЧНОСТИ, чтобы желтый
' цвет в изображении ПЕРЕДНЕГО ПЛАНА стал прозрачным и через
' него можно было видеть содержимое изображения
Поделиться:
Популярные книги
Кодекс Охотника. Книга III
3. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
7.00
рейтинг книги
Геном хищника. Книга пятая
5. Я - Легенда!
Фантастика:
рпг
фэнтези
попаданцы
6.00
рейтинг книги
Неучтенный элемент. Том 3
3. Антимаг. Вне системы
Фантастика:
фэнтези
5.00
рейтинг книги
Монстр из прошлого тысячелетия
5. Соприкосновение миров
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Кодекс Охотника. Книга XVII
17. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Чайлдфри
Любовные романы:
современные любовные романы
6.51
рейтинг книги
Запечатанный во тьме. Том 2
2. Хроники Арнея
Фантастика:
уся
эпическая фантастика
фэнтези
5.00
рейтинг книги
На границе империй. Том 10. Часть 7
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
Журнал «Если», 2002 № 08
114. Журнал Если
Фантастика:
научная фантастика
5.00
рейтинг книги
Ким
Приключения:
исторические приключения
7.62
рейтинг книги
Криптозой
Фантастика:
научная фантастика
6.25
рейтинг книги
Оживший камень
1. Артефактор
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Ваше Сиятельство 7
7. Ваше Сиятельство
Фантастика:
боевая фантастика
аниме
5.00
рейтинг книги
Уникум
1. Уникум
Фантастика:
альтернативная история
4.60