System.Object, ByVal e As System.EventArgs) _
Handles RadioButton1.CheckedChanged
'Если обновление данных в пользовательском интерфейсе осуществляется
'приложением, то мы не хотим обрабатывать его так же, как если бы
'это событие было запущено пользователем. Если это именно так,
'то осуществить выход из функции без выполнения каких-либо действий.
If (m userInterfaceUpdateOccuring = True) Then
Return
End If
'Подсчитать, сколько раз выполнена обработка данного события
m_radioButtonlChangeEventCount = _
m_radioButtonlChangeEventCount + 1
#If (EVENTINSTRUMENTATION <> 0) Then
'Зарегистрировать наступление события
instrumented_logEventOccurrence("radioButton1.Change:" + _
m_radioButton1ChangeEventCount.ToString() + ":" + _
RadioButton1.Checked.ToString()) 'value
#End If
End Sub
'-------------------------------------------------------------
'Событие щелчка на кнопке Button1
'Имитирует обновление пользовательского интерфейса программным
'кодом, что может приводить к запуску обработчика события
'-------------------------------------------------------------
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
'Указать на то, что мы не хотим, чтобы обработчики сразу же
'обрабатывали события, поскольку мы обновляем
'пользовательский интерфейс.
'm_userInterfaceUpdateOccuring = true;
RadioButton1.Checked = True
TextBox1.Text = "Hello World"
'Обновление пользовательского интерфейса закончено
m_userInterfaceUpdateOccuring = False
End Sub
'------------------------------------------------------------------
'Обработчик события изменения состояния элемента управления TextBox
'------------------------------------------------------------------
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles TextBox1.TextChanged
'Если обновление данных в пользовательском интерфейсе осуществляется
'приложением, то мы не хотим обрабатывать его так же, как если бы
'это событие было запущено пользователем. Если это именно так,
'то осуществить выход из функции без выполнения каких-либо действий.
If (m_userInterfaceUpdateOccuring = True) Then
Return
End If
'Подсчитать, сколько раз выполнена обработка данного события
m_textBox1ChangeEventCount = m_textBox1ChangeEventCount + 1
#If EVENTINSTRUMENTATION <> 0 Then
'Занести событие в журнал
instrumented_logEventOccurrence("textBox1.Change:" + _
m_textBoxlChangeEventCount.ToString() + ":" + _
TextBox1.Text.ToString()) 'Value
#End If
End Sub
Private Sub buttonShowEventLog_Click(ByVal sender As _
System.Object, ByVal e As System.EventArgs) _
Handles buttonShowEventLog.Click
#If EVENTINSTRUMENTATION <> 0 Then
instrumentation_ShowEventLog()
#End If
End Sub
Листинг 11.5. Вызов метода Update() элемента управления для отображения пояснительного текста, информирующего о ходе выполнения задачи'--------------------------------------------------------------------
'Этот код принадлежит форме, содержащей по одному элементу управления
'Button (button1) и Label (label1)
'--------------------------------------------------------------------
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
'Отобразить курсор ожидания
System.Windows.Forms.Cursor.Current = _
System.Windows.Forms.Cursors.WaitCursor
Dim testString As String
Dim loop3 As Integer
For loop3 = 1 To 100 Step 10
Label1.Text = loop3.ToString() + "% Done..."
'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
'Чтобы отобразить информацию о процессе обновления,!
'удалите символы комментария в строке ниже !
'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
'Label1.Update()
testString = ""
Dim loop2 As Integer
For loop2 = 1 To 1000
testString = testString + "тест"
Next
Next
Label1.Text = "Готово!"
'Удалить курсор ожидания
System.Windows.Forms.Cursor.Current = _
System.Windows Forms.Cursors.Default
End Sub
Листинг 11.6. Создание изображения на внеэкранной растровой поверхности и передача его в элемент управления PictureBox'--------------------------------------------------------------------
'Создать рисунок на растровой поверхности. Переслать его в PictureBox
'--------------------------------------------------------------------
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
'Создать новую битовую карту
Dim myBitmap As System.Drawing.Bitmap
myBitmap = New System.Drawing.Bitmap(PictureBox1.Width, _
PictureBox1.Height)
'--------------------------------------------------------------------------
'Создать объект Graphics, чтобы иметь возможность рисовать на битовой карте
'--------------------------------------------------------------------------
Dim myGfx As System.Drawing.Graphics
myGfx = System.Drawing.Graphics.FromImage(myBitmap)
'Закрасить нашу битовую карту желтым цветом
myGfx.Clear(System.Drawing.Color.Yellow)
'Создать перо
Dim myPen As System.Drawing.Pen
rayPen = New System.Drawing.Pen(System.Drawing.Color.Blue)
'-----------------
'Нарисовать эллипс