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

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

Жанры

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

Салмре Иво

Шрифт:

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

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

Кодекс Охотника. Книга XXIX

Винокуров Юрий
29. Кодекс Охотника
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Кодекс Охотника. Книга XXIX

Сильнейший Столп Империи. Книга 1

Ермоленков Алексей
1. Сильнейший Столп Империи
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Сильнейший Столп Империи. Книга 1

Охотник за головами

Вайс Александр
1. Фронтир
Фантастика:
боевая фантастика
космическая фантастика
5.00
рейтинг книги
Охотник за головами

Двойник Короля

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

Я до сих пор не князь. Книга XVI

Дрейк Сириус
16. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я до сих пор не князь. Книга XVI

Старая школа рул

Ромов Дмитрий
1. Второгодка
Фантастика:
альтернативная история
6.00
рейтинг книги
Старая школа рул

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

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

Третий. Том 6

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

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

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

Зайти и выйти

Суконкин Алексей
Проза:
военная проза
5.00
рейтинг книги
Зайти и выйти

Двойник Короля 8

Скабер Артемий
8. Двойник Короля
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Двойник Короля 8

И.Бабель. Воспоминания современников

Паустовский Константин Георгиевич
Документальная литература:
биографии и мемуары
5.00
рейтинг книги
И.Бабель. Воспоминания современников

Я не князь. Книга XIII

Дрейк Сириус
13. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я не князь. Книга XIII

Технарь

Муравьёв Константин Николаевич
1. Технарь
Фантастика:
космическая фантастика
попаданцы
7.13
рейтинг книги
Технарь