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

на главную - закладки

Жанры

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

Салмре Иво

Шрифт:

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

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

'управляющий переходами приложения в другие состояния в соответствии с

'текущим режимом работы пользователя

'-----------------
– ---------------------------------------------------

Private Sub StateChangeForGame(ByVal newGameUIState _

 As GameState)

 'Определить, в какое состояние переходит приложение

 Select Case (newGameUIState)

 Case GameState.StartScreen

'Если переход в данное состояние осуществляется из состояния,

'для которого это запрещено, возбудить исключение

If ((m_CurrentGameState <> GameState.CongratulateUser) _

AndAlso (m_CurrentGameState <> GameState.ScoldUser)) Then

Throw New System.Exception("Запрещённое изменение состояния!")

End If

'ЧТО СДЕЛАТЬ: Поместите сюда код, выполняющий следующие операции:

' 1. Скрытие (Hide), отображение (Show) и перемещение (Move)

' элементов управления пользовательского интерфейса

' 2. Настройка переменных/состояний игры, соответствующих

' данному режиму работы

' SetUpGameStateForStartScreen

 Case GameState.AskQuestion

'Если переход в данное состояние осуществляется из состояния,

'для которого это запрещено, возбудить исключение

If ((m_CurrentGameState <> GameState.StartScreen) _

AndAlso (m_CurrentGameState <> GameState.CongratulateUser) _

AndAlso (m_CurrentGameState <> GameState.ScoldUser)) Then

Throw New System.Exception("Запрещённое изменение состояния!")

End If

'ЧТО СДЕЛАТЬ: Поместите сюда код, выполняющий следующие операции:

' 1. Скрытие (Hide), отображение (Show) и перемещение (Move)

' элементов управления пользовательского интерфейса

' 2. Настройка переменных/состояний игры, соответствующих

' данному режиму работы

'

' SetUpGameStateForAskQuestion

 Case GameState.CongratulateUser

'Если переход в данное состояние осуществляется из состояния,

'для которого это запрещено, возбудить исключение

If (m_CurrentGameState <> GameState.AskQuestion) Then

Throw New System.Exception("Запрещённое изменение состояния!")

End If

'ЧТО СДЕЛАТЬ: Поместите сюда код, выполняющий следующие операции:

' 1. Скрытие (Hide), отображение (Show) и перемещение (Move)

' элементов управления пользовательского интерфейса

' 2. Настройка переменных/состояний игры, соответствующих

' данному режиму работы

'

' SetUpGameStateForCongratulateUser

 Case GameState.ScoldUser

'Если переход в данное состояние осуществляется из состояния,

'для которого это запрещено, возбудить исключение

If (m_CurrentGameState <> GameState.AskQuestion) Then

Throw New System.Exception("Запрещённое изменение состояния!")

End If

'ЧТО СДЕЛАТЬ: Поместите сюда код, выполняющий следующие операции:

' 1. Скрытие (Hide), отображение (Show) и перемещение (Move)

' элементов управления пользовательского интерфейса

' 2. Настройка переменных/состояний игры, соответствующих

' данному режиму работы

' SetUpGameStateForScoldUser

 Case Else

Throw New System.Exception("Наизвестное состояние!")

 End Select

 'Сохранить запрошенное новое состояние в качестве текущего

 m_CurrentGameState = newGameUIState

End Sub

End Class

Листинг 5.2. Неявное изменение состояния приложения (неудачный подход)

'Код, выполняющийся при загрузке формы

Private Sub Form1_Load(ByVal senderAs System.Object,ByVal _

 e As System.EventArgs) Handles MyBase.Load

 TextBox1.Visible = True

 ListBox1.Visible = False

End Sub

'Данные

Private m_someImportantInfoAs String

Поделиться:
Популярные книги

Четники. Королевская армия

Тимофеев Алексей Юрьевич
Документальная литература:
биографии и мемуары
публицистика
5.00
рейтинг книги
Четники. Королевская армия

Рассвет русского царства 3

Грехов Тимофей
3. Новая Русь
Фантастика:
историческое фэнтези
альтернативная история
5.00
рейтинг книги
Рассвет русского царства 3

Александри В. Стихотворения. Эминеску М. Стихотворения. Кошбук Д. Стихотворения. Караджале И.-Л. Потерянное письмо. Рассказы. Славич И. Счастливая мельница

Эминеску Михай
126. Библиотека всемирной литературы
Поэзия:
поэзия
5.00
рейтинг книги
Александри В. Стихотворения. Эминеску М. Стихотворения. Кошбук Д. Стихотворения. Караджале И.-Л. Потерянное письмо. Рассказы. Славич И. Счастливая мельница

Слезы Эйдена 1

Владимиров Денис
11. Глэрд
Фантастика:
боевая фантастика
фэнтези
попаданцы
5.00
рейтинг книги
Слезы Эйдена 1

Князь Андер Арес 3

Грехов Тимофей
3. Андер Арес
Фантастика:
рпг
аниме
фэнтези
5.00
рейтинг книги
Князь Андер Арес 3

Прапорщик. Назад в СССР. Книга 7

Гаусс Максим
7. Второй шанс
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Прапорщик. Назад в СССР. Книга 7

Низший - Инфериор. Компиляция. Книги 1-19

Михайлов Дем Алексеевич
Фантастика 2023. Компиляция
Фантастика:
боевая фантастика
5.00
рейтинг книги
Низший - Инфериор. Компиляция. Книги 1-19

Кодекс Императора IV

Сапфир Олег
4. Кодекс Императора
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Кодекс Императора IV

На границе империй. Том 10. Часть 7

INDIGO
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 7

Адепт

Листратов Валерий
4. Ушедший Род
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Адепт

Гримуар темного лорда II

Грехов Тимофей
2. Гримуар темного лорда
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Гримуар темного лорда II

Гримуар тёмного лорда I

Грехов Тимофей
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Гримуар тёмного лорда I

Газлайтер. Том 17

Володин Григорий Григорьевич
17. История Телепата
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Газлайтер. Том 17

Попаданец на рыбалке. Книги 1-7

Скворцов Владимир Николаевич
Попаданец на рыбалке
Фантастика:
фэнтези
попаданцы
6.88
рейтинг книги
Попаданец на рыбалке. Книги 1-7