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

ЖАНРЫ

Программирование мобильных устройств на платформе .NET Compact Framework

Салмре Иво

Шрифт:

listItems.Add("0 событий")

Return

 End If

 'Отобразить поверх списка общее количество

 'подсчитанных нами событий

 listItems.Add(m_instrumentedEventLog.Count.ToString + _

" событий")

 'Перечислить элементы списка в обратном порядке, чтобы

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

 Dim logItem As String

 Dim listIdx As Integer

 For listIdx = _

m_instrumentedEventLog.Count - 1 To 0 Step -1

logItem = CStr(m_instrumentedEventLog(listIdx))

listItems.Add(logItem)

 Next

End Sub

#End If

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

'Событие
изменения состояния переключателя RadioButton1

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

Private Sub RadioButton1_CheckedChanged(ByVal sender As _

 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)

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

Поделиться с друзьями: