My-library.info
Все категории

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

На электронном книжном портале my-library.info можно читать бесплатно книги онлайн без регистрации, в том числе Иво Салмре - Программирование мобильных устройств на платформе .NET Compact Framework. Жанр: Программирование издательство -, год 2004. В онлайн доступе вы получите полную версию книги с кратким содержанием для ознакомления, сможете читать аннотацию к книге (предисловие), увидеть рецензии тех, кто произведение уже прочитал и их экспертное мнение о прочитанном.
Кроме того, в библиотеке онлайн my-library.info вы найдете много новинок, которые заслуживают вашего внимания.

Название:
Программирование мобильных устройств на платформе .NET Compact Framework
Автор
Издательство:
-
ISBN:
-
Год:
-
Дата добавления:
17 сентябрь 2019
Количество просмотров:
261
Читать онлайн
Иво Салмре - Программирование мобильных устройств на платформе .NET Compact Framework

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

Иво Салмре - Программирование мобильных устройств на платформе .NET Compact Framework - описание и краткое содержание, автор Иво Салмре, читайте бесплатно онлайн на сайте электронной библиотеки My-Library.Info
Книга известного профессионала в области компьютерных технологий посвящена разработке приложений для широкого спектра мобильных устройств с использованием популярной и постоянно развивающейся платформы .NET Compact Framework. Уникальность этой книги состоит в том, что в ней гармонично переплетены теоретические сведения обо всем цикле разработки программного обеспечения с практическими примерами применения на языках С# и Visual Basic. Подробно рассматриваются концепции, лежащие в основе самой платформы .NET Compact Framework, а также вопросы, связанные с созданием эффективного пользовательского интерфейса, управлением памятью, производительностью и надежностью. Немалое внимание уделяется практическим аспектам разработки приложений для мобильных устройств, среди которых выбор модели представления и доступа к данным, внедрение коммуникационной модели, реализация модели поведения с помощью конечных автоматов и использование XML.Книга рассчитана на разработчиков разной квалификации, а также может быть полезна для студентов и преподавателей соответствующих специальностей.

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

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

 If (tnExpanding.Text = nodeText_Neighborhoods) Then

  PopulateTreeViewNeighborhoods(tnExpanding)

  Return 'done adding items!

 Else

  'Проверить другие возможности для узлов дерева, которые мы должны

  'добавить.

  MsgBox("HE СДЕЛАНО: Добавьте код для динамического заполнения этого узла")


  'Снять отметку с этого узла, чтобы мы не могли вновь выполнить

  'этот код

  tnExpanding.Tag = ""

 End If

End Sub


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

'Эта функция вызывается для динамического добавления дочерних узлов

'в узел "Neighborhood"

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

Sub PopulateTreeViewNeighborhoods(ByVal tnAddTo As TreeNode)

 Dim tvControl As TreeView

 tvControl = tnAddTo.TreeView

 tvControl.BeginUpdate()

 'Очистить имеющийся фиктивный узел

 tnAddTo.Nodes.Clear()


 'Объявить четыре узла, которые мы хотим сделать дочерними узлами

 'того узла, который был передан.

 Dim newNeighborhoodNodes() As TreeNode

 ReDim newNeighborhoodNodes(3)

 newNeighborhoodNodes(0) = New TreeNode("Capitol Hill")

 newNeighborhoodNodes(1) = New TreeNode("Chelsea")

 newNeighborhoodNodes(2) = New TreeNode("Downtown")

 newNeighborhoodNodes(3) = New TreeNode("South Bay")

 'Добавить дочерние узлы в элемент управления TreeView

 tnAddTo.Nodes.AddRange(newNeighborhoodNodes)


 tvControl.EndUpdate()

End Sub

Листинг 11.3. Запуск обработчика событий при изменении содержимого элемента TextBox программным путем

Private m_eventTriggerCount As Integer


Private Sub Button1_Click(ByVal sender As System.Object, _

 ByVal e As  System.EventArgs) Handles Buttonl.Click

 'Запускает событие TextChanged так же,

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

 TextBox1.Text = "Привет, мир"

End Sub


Private Sub TextBox1_TextChanged(ByVal sender As System.Object, _

 ByVal e As System.EventArgs) Handles TextBox1.TextChanged

 m_eventTriggerCount = m_eventTriggerCount + 1

 'Обновить надпись для отображения количества событий

 Label1.Text = "Событий: #" + CStr(m_eventTriggerCount)

 'Внести каждое событие в список

 ListBox1.Items.Add(m_eventTriggerCount.ToString() + TextBox1.Text)

End Sub

Листинг 11.4. Использование модели состояний для обновления интерфейса и контроль запуска событий с целью более глубокого изучения процесса обработки событий и управления им

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

'Для активизации контроля запуска событий:

' #Const EVENTINSTRUMENTATION = 1

'Для отмены контроля запуска событий:

' #Const EVENTINSTRUMENTATION = 0

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

#Const EVENTINSTRUMENTATION = 1


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

'Флаг, указывающий обработчикам событий, должен ли из них осуществляться

'выход без выполнения каких-либо действий

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

Private m_userInterfaceUpdateOccuring As Boolean


'Счетчики событий

Private m_radioButton1ChangeEventCount As Integer

Private m_textBox1ChangeEventCount As Integer


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

'Код, который следует включать лишь в том случае, если приложение

'выполняется в режиме контроля запуска событий. Этот код характеризуется

'относительно высокими накладными расходами, и его следует компилировать и

'выполнять только тогда, когда выполняется диагностика.

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

#If EVENTINSTRUMENTATION <> 0 Then

Private m_instrumentedEventLog As System.Collections.ArrayList


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

'Заносит записи о возникновении событий в массив, который мы

'можем просмотреть

'Примечание: Не делается никаких попыток ограничить размерность массива

'  регистрационных записей, поэтому, чем дольше выполняется приложение,

'  тем больше становится размер массива

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

Private Sub instrumented_logEventOccurrence(ByVal eventData _

 As String)

 'Создать журнал событий, если он еще не был создан

 If (m_instrumentedEventLog Is Nothing) Then

  m_instrumentedEventLog = _

   New System.Collections.ArrayList

 End If


 'Зарегистрировать событие

 m_instrumentedEventLog.Add(eventData)

End Sub


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

'Отобразить список возникших событий

'Примечание: Этот вариант реализации довольно груб.

' Целесообразнее отображать список событий

' в отдельном диалоговом окне, которое специально выводится

' для этого на экран.

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

Private Sub instrumentation_ShowEventLog() Dim listItems As _

 System.Windows.Forms.ListBox.ObjectCollection

 listItems = listBoxEventLog.Items


 'Очистить список элементов

 listItems.Clear()

 'При отсутствии событий - выход

 If (m instrumentedEventLog Is Nothing) Then

  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


Иво Салмре читать все книги автора по порядку

Иво Салмре - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки My-Library.Info.


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

Отзывы читателей о книге Программирование мобильных устройств на платформе .NET Compact Framework, автор: Иво Салмре. Читайте комментарии и мнения людей о произведении.

Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*
Все материалы на сайте размещаются его пользователями.
Администратор сайта не несёт ответственности за действия пользователей сайта..
Вы можете направить вашу жалобу на почту librarybook.ru@gmail.com или заполнить форму обратной связи.