Чтение онлайн

на главную

Жанры

Программирование мобильных устройств на платформе .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

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

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

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

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

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

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

Звездная Кровь. Изгой

Елисеев Алексей Станиславович
1. Звездная Кровь. Изгой
Фантастика:
боевая фантастика
попаданцы
рпг
5.00
рейтинг книги
Звездная Кровь. Изгой

#Бояръ-Аниме. Газлайтер. Том 36

Володин Григорий Григорьевич
36. История Телепата
Фантастика:
боевая фантастика
аниме
фэнтези
5.00
рейтинг книги
#Бояръ-Аниме. Газлайтер. Том 36

Инкарнатор

Прокофьев Роман Юрьевич
1. Стеллар
Фантастика:
боевая фантастика
рпг
7.30
рейтинг книги
Инкарнатор

Я еще не бог. Книга XXXV

Дрейк Сириус
35. Дорогой барон!
Фантастика:
аниме
попаданцы
5.00
рейтинг книги
Я еще не бог. Книга XXXV

Эпоха Опустошителя. Том IV

Павлов Вел
4. Вечное Ристалище
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Эпоха Опустошителя. Том IV

Имперец. Том 4

Романов Михаил Яковлевич
3. Имперец
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Имперец. Том 4

Чужак

Листратов Валерий
1. Ушедший Род
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Чужак

Андер Арес

Грехов Тимофей
1. Андер Арес
Фантастика:
рпг
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Андер Арес

Третий. Том 3

INDIGO
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
Третий. Том 3

Диверсант

Вайс Александр
2. Фронтир
Фантастика:
боевая фантастика
космическая фантастика
5.00
рейтинг книги
Диверсант

Сын счастья

Вассму Хербьёрг
2. Книга Дины
Проза:
современная проза
5.00
рейтинг книги
Сын счастья

Память льда

Эриксон Стивен
3. «Малазанская империя»
Фантастика:
фэнтези
6.00
рейтинг книги
Память льда

Железное пламя

Яррос Ребекка
Фантастика:
фэнтези
5.00
рейтинг книги
Железное пламя

Двойник Короля 8

Скабер Артемий
8. Двойник Короля
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Двойник Короля 8