'задать прозрачный цвет на наших операций рисования
'-------------------------------------------------------
Dim trasparencyInfo As System.Drawing.Imaging.ImageAttributes
trasparencyInfo = New System.Drawing.Imaging.ImageAttributes
'----------------------
'Задать прозрачный цвет
'----------------------
trasparencyInfo.SetColorKey(System.Drawing.Color.Yellow, _
System.Drawing.Color.Yellow)
'Задать прямоугольник рисунка
Dim rect As System.Drawing.Rectangle = _
New System.Drawing.Rectangle(0, 0, _
m_backgroundBitmap.Width, m_backgroundBitmap.Height)
'-----------------------------------------------------------------------
'Нарисовать изображение ПЕРЕДНЕГО ПЛАНА поверх изображения ЗАДНЕГО ПЛАНА
'и использовать прозрачный цвет в ImageAttributes для создания окна
'прозрачности, через которое виден задний план
'-----------------------------------------------------------------------
gfx.DrawImage(m_foregroundBitmap, rect, 0, 0, _
m_foregroundBitmap.Width, m_foregroundBitmap.Height, _
System.Drawing.GraphicsUnit.Pixel, trasparencyInfo)
'Очистить
gfx.Dispose()
'Показать результат в виде растрового изображения
PictureBox1.Image = m_backgroundBitmap
End Sub
Листинг 13.6. Код формы, демонстрирующий загрузку встроенных ресурсов
'-----------------------------------------------------------
'Загрузить изображение и отобразить его в объекте PictureBox
'-----------------------------------------------------------
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
LoadImageFromResource()
PictureBox1.Image = m_myBitmapImage
End Sub
Private m_myBitmapImage As System.Drawing.Bitmap
'------------------------------------------------------------------
'Загрузить изображение, которое хранится в виде встроенного ресурса
'в нашей сборке
'------------------------------------------------------------------
Public Sub LoadImageFromResource()
'Если изображение уже загружено,
'то не имеет смысла делать это повторно.
If Not (m_myBitmapImage Is Nothing) Then
Return
End If
'----------------------------------------------------
'Получить ссылку на двоичную сборку нашего приложения
'----------------------------------------------------
Dim thisAssembly As System.Reflection.Assembly = _
System.Reflection.Assembly.GetExecutingAssembly()
'-------------------
'Получить имя сборки
'-------------------
Dim thisAssemblyName As System.Reflection.AssemblyName = _
thisAssembly.GetName()
Dim assemblyName As String = thisAssemblyName.Name
'-----------------------------------------------------------------------
'Извлечь поток изображения из нашей сборки и создать соответствующую ему
'битовую карту в памяти
'ПРИМЕЧАНИЕ: Имя потока ресурса ResourceStream ЧУВСТВИТЕЛЬНО К РЕГИСТРУ,
' поэтому имя изображения должно В ТОЧНОСТИ совпадать с именем
' файла изображения, который вы добавили в проект
'-----------------------------------------------------------------------
m_myBitmapImage = New System.Drawing.Bitmap( _
thisAssembly.GetManifestResourceStream( _
assemblyName + ".MyImage.PNG"))
End Sub
Примеры к главе 14 (данные)
Листинг 14.1. Простой пример создания и использования объекта ADO.NET DataSet
'Объект DataSet, который мы собираемся загрузить
Private m_myDataSet As System.Data.DataSet
'Константы, которые будут использоваться
Const FILE_EMPTY_DATASET As String = "EmptyDataSet.xml"
Const FILE_1TABLE_DATASET As String = "1TableDataSet.xml"
Const dividerLine As String = _
"-----------------------------" + vbCrLf
'-------------------------------------------------------
'Загрузить содержимое файла и присоединить его к тексту,
'содержащемуся в элементе управления textBox1
'-------------------------------------------------------
Private Sub addFileContentsToTextBox(ByVal fileName As String)
'Открыть файл и считать его содержимое
Dim myStreamReader As System.IO.StreamReader
myStreamReader = System.IO.File.OpenText(fileName)
Dim fileText As String = myStreamReader.ReadToEnd()
'Закрыть файл
myStreamReader.Close()
'Присоединить содержимое к тексту, находящемуся в текстовом окне
TextBox1.Text = TextBox1.Text + _
dividerLine + "FILE: '" + fileName + "'" + vbCrLf + _
dividerLine + fileText + vbCrLf
End Sub
'--------------------------------------------------------
'1. Создает набор данных,
' сохраняет набор данных в виде XML,
' отображает результаты в текстовом окне
'2. Добавляет таблицу данных в набор данных,
' добавляет два типизированных столбца в таблицу данных,
' добавляет две строки в таблицу данных,
' сохраняет набор данных в виде XML,
' отображает результаты в текстовом окне
'--------------------------------------------------------
Private Sub Button1_Click(ByVal sender As System.Object, _
Читать дальше