Шрифт:
End Class
Листинг 13.4. Код формы для создания пользовательского элемента управления TextBox
'-----------------------------------------------------------------
'Переменная для хранения нашего нового элемента управления TextBox
'-----------------------------------------------------------------
Private m_filteredTextBox As SocialSecurityTextBox
'-----------------------------------------------------------------------
'ОБРАБОТЧИК СОБЫТИЙ: Создать экземпляр нашего пользовательского элемента
' управления и поместить его в форму
'-----------------------------------------------------------------------
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
'Создать, позиционировать и разместить элемент управления
m_filteredTextBox = New SocialSecurityTextBox
m_filteredTextBox.Bounds = _
New System.Drawing.Rectangle(2, 2, 160, 20)
'Подключить обработчик событий
AddHandler m_filteredTextBox.TextChanged, _
AddressOf Me.textBox_TextChanged
'Задать родительский объект
m_filteredTextBox.Parent = Me
'Выделить элемент управления
m_filteredTextBox.Focus
'Сделать данную кнопку недоступной, чтобы поверх данного объекта
'не был создан второй объект
SocialSecurityTextBox Button1.Enabled = False
End Sub
'----------------------------------------------------------------
'ОБРАБОТЧИК СОБЫТИЙ: Этот обработчик подключается динамически при
' создании элемента управления
'----------------------------------------------------------------
Private Sub textBox_TextChanged(ByVal sender As Object, _
ByVal e As System.EventArgs)
If (m_filteredTextBox.IsFullValidInput = True) Then
label1.Text = "FULL SOCIAL SECURITY NUMBER!!!"
Else
Label1.Text = "Not full input yet..."
End If
End Sub
Листинг 13.5. код формы, демонстрирующий использование прозрачности '
'----------------------------------------------------------------
'Размеры наших битовых образов и экранного изображения 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