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 - читать книгу онлайн бесплатно, автор Иво Салмре

   thisAssembly.GetManifestResourceStream( _

   assemblyName + ".Hank_LeftRunl.bmp"))

  m_CaveMan_Bitmap4 = New System.Drawing.Bitmap( _

   thisAssembly.GetManifestResourceStream( _

   assemblyName + ".Hank_LeftRun2.bmp"))


  'Добавить их в коллекцию

  m_colCaveManBitmaps = New System.Collections.ArrayList

  m_colCaveManBitmaps.Add(m_CaveMan_Bitmap1)

  m_colCaveManBitmaps.Add(m_CaveMan_Bitmap2)

  m_colCaveManBitmaps.Add(m_CaveMan_Bitmap3)

  m_colCaveManBitmaps.Add(m_CaveMan_Bitmap4)

 End If


 'Возвратить коллекцию

 Return m_colCaveManBitmaps

End Function

End Class

Примеры к главе 13 (проектирование пользовательского интерфейса)

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

#Const PLAYFIELD_ON_BOTTOM = 0 'Отобразить ПОЛЕ ИГРЫ под ПИ

'#Const PLAYFIELD_ON_BOTTOM = 1 'Отобразить ПОЛЕ ИГРЫ над ПИ

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

'ОБРАБОТЧИК СОБЫТИЙ: Вызывается при загрузке формы

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

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

 ByVal e As System.EventArgs) Handles MyBase.Load


 'Задать совместно используемые свойства нашего визуального интерфейса

 SetStartControlPositionAndState()

 'Задать динамические свойства, исходя из того, в какое состояние

 'игры мы входим

 StateChangeForGameUI(GameUIState.startScreen)

End Sub


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

'Конечный автомат, который управляет отображением кнопок, скрываемых вручную

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

Private Enum GameUIState

 startScreen = 1

 waitForNextQuestion = 2

 waitForUserToStateKnowledge = 4

 waitForUserToAnswerMultipleChoice = 8

End Enum


'Текущее состояние игры

Private m_GameUIState As GameUIState


'==========================================================================

'Конечный автомат, используемый для управления пользовательским интерфейсом

'==========================================================================

Private Sub StateChangeForGameUI(ByVal newGameUIState As _

 GameUIState)

 m_GameUIState = newGameUIState

 Select Case (newGameUIState)

 Case GameUIState.startScreen

  buttonAskQuestion.Visible = True

  buttonAskQuestion.Text = "Start"


  'Скрыть текстовое окно

  textBoxAskQuestion.Visible = False

  SetAnswerButtonVisibility(False)

  SetDifficultyButtonVisibility(False)

 Case GameUIState.waitForNextQuestion

  setQuestionText("List answer details here... " + vbCrLf + _

   "Lots of space to write..." + vbCrLf + _

   "Waiting for user to select next question...")

  textBoxAskQuestion.Visible = True


  buttonAskQuestion.Text = "Next"

  buttonAskQuestion.Visible = True

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

  buttonAskQuestion.BringToFront()

  SetAnswerButtonVisibility(False)

  SetDifficultyButtonVisibility(False)

#If PLAYFIELD_ON_BOTTOM <> 0 Then 'ПОЛЕ ИГРЫ располагается под ПИ

  textBoxAskQuestion.Height = pictureBoxGameBoard.Top - 2

#Else 'ПОЛЕ ИГРЫ располагается над пользовательскими элементами управления

  textBoxAskQuestion.Top = pictureBoxGameBoard.Top + _

   pictureBoxGameBoard.Height + 2

  textBoxAskQuestion.Height = Me.Height - _

   textBoxAskQuestion.Top

#End If

 Case GameUIState.waitForUserToStateKnowledge

  SetTextForVocabularyQuestion()

  textBoxAskQuestion.Visible = True

  buttonAskQuestion.Visible = False

  SetAnswerButtonVisibility(False)

  SetDifficultyButtonVisibility(True)

#If PLAYFIELD_ON_BOTTOM <> 0 Then 'ПОЛЕ ИГРЫ располагается под ПИ

  textBoxAskQuestion.Height = _

   buttonShowAnswers_AdvancedVersion.Top - 2

#Else 'ПОЛЕ ИГРЫ располагается над пользовательскими элементами управления

  textBoxAskQuestion.Top = _

   buttonShowAnswers_AdvancedVersion.Top + _

   buttonShowAnswers_AdvancedVersion.Height + 2

  textBoxAskQuestion.Height = Me.Height - _

   textBoxAskQuestion.Top

#End If

 Case GameUIState.waitForUserToAnswerMultipleChoice

  buttonAskQuestion.Visible = False

  SetDifficultyButtonVisibility(False)

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

  SetAnswerButtonEnabled(True)

  SetAnswerButtonVisibility(True)

#If PLAYFIELD_ON_BOTTOM <> 0 Then

  'ПОЛЕ ИГРЫ располагается под ПИ

  textBoxAskQuestion.Height = buttonAnswer0.Top - 2

#Else 'ПОЛЕ ИГРЫ располагается над пользовательскими элементами управления

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

  'эффективно

  textBoxAskQuestion.Top = buttonAnswer5.Top + _

   buttonAnswer5.Height + 2

  textBoxAskQuestion.Height = Me.Height - _

   textBoxAskQuestion.Top

#End If

 End Select

End Sub


'========================================================================

'Задать статическую компоновку нашего пользовательского интерфейса.

'Сюда входят все элементы, позиции которых остаются фиксированными.

'Изменения в остальные свойства внесет конечный автомат пользовательского

'интерфейса

'========================================================================

Private Sub SetStartControlPositionAndState()

 pictureBoxGameBoard.Width = 240

 pictureBoxGameBoard.Height = 176


 'Установить размеры кнопок множественного выбора вариантов ответов

 Const answerButtons_dx As Integer = 117

 Const answerButtons_dy As Integer = 18


 buttonAnswer0.Width = answerButtons_dx

 buttonAnswer0.Height = answerButtons_dy

 buttonAnswer1.Size = buttonAnswer0.Size

 buttonAnswer2.Size = buttonAnswer0.Size

 buttonAnswer3.Size = buttonAnswer0.Size

 buttonAnswer4.Size = buttonAnswer0.Size

 buttonAnswer5.Size = buttonAnswer0.Size

 buttonShowAnswers_AdvancedVersion.Width = answerButtons_dx

 buttonShowAnswers_AdvancedVersion.Height = 24

 buttonShowAnswers_SimpleVersion.Size = _

  buttonShowAnswers_AdvancedVersion.Size


 'Расстояние (в пикселях) между соседними кнопками

 Const dx_betweenButtons As Integer = 3

 Const dy betweenButtons As Integer = 2

 Const answerbuttons_beginX As Integer = 3


 'Создать задний план для нашего изображения, чтобы мы видели

 'его в процессе тестирования

 Dim gameBoard As System.Drawing.Bitmap

 gameBoard = New System.Drawing.Bitmap( _

  pictureBoxGameBoard.Width, pictureBoxGameBoard.Height)


 Dim gameboard_gfx As System.Drawing.Graphics

 gameboard_gfx = System.Drawing.Graphics.FromImage(gameBoard)

 gameboard_gfx.Clear(System.Drawing.Color.Yellow)


 Dim myPen As System.Drawing.Pen = New System.Drawing.Pen( _

  System.Drawing.Color.Blue)

 gameboard_gfx.DrawRectangle(myPen, 2, 2, _

  gameBoard.Width - 4, gameBoard.Height - 6)

 myPen.Dispose()

 gameboard_gfx.Dispose()

 pictureBoxGameBoard.Image = gameBoard


 'Разместить текстовое окно, в котором содержатся задаваемые вопросы,

 'а также подробные ответы для пользователей

 textBoxAskQuestion.Left = 0

 textBoxAskQuestion.Width = 240


 buttonAskQuestion.Width = 64

 buttonAskQuestion.Height = 20

#If PLAYFIELD_ON_BOTTOM <> 0 Then 'ПОЛЕ ИГРЫ располагается под ПИ

 Const answerbuttons_beginY As Integer = 42

 Const showanswers_beginY As Integer = 77

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

 'Задать кнопки выбора вариантов "Easy" или "Hard" режима игры

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

 buttonShowAnswers_AdvancedVersion.Top = showanswers_beginY

 buttonShowAnswers_SimpleVersion.Top = showanswers_beginY


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

 'Задать набор вариантов ответов

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

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

 'все остальные элементы управления

 buttonAnswer0.Top = answerbuttons_beginY


 'Поместить PictureBox под элементами управления

 pictureBoxGameBoard.Top = _

  (answerButtons dy + dy betweenButtons) * 3 + _

  answerbuttons_beginY


 buttonAskQuestion.Top = 0

 buttonAskQuestion.Left = 174

 textBoxAskQuestion.Top = 0

#Else 'ПОЛЕ ИГРЫ располагается над пользовательскими элементами управления

 Const answerbuttons_beginY As Integer = 174

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

 'Задать кнопки выбора вариантов "Easy" или "Hard" режима игры

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

 buttonShowAnswers_AdvancedVersion.Top = answerbuttons_beginY

 buttonShowAnswers_SimpleVersion.Top = answerbuttons_beginY


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

 'Задать набор вариантов ответа

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

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

 'все остальные элементы управления

 buttonAnswer0.Top = answerbuttons_beginY

 pictureBoxGameBoard.Top = 0

 buttonAskQuestion.Top = answerbuttons_beginY

 buttonAskQuestion.Left = 174

#End If

 buttonShowAnswers AdvancedVersion.Left = answerbuttons_beginX


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

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


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

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

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