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

Салмре Иво

Шрифт:

//--------------------------------------------------------------------------

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

//--------------------------------------------------------------------------

private enum GameUIState {

 startScreen = 1,

 waitForNextQuestion = 2,

 waitForUserToStateKnowledge = 4,

 waitForUserToAnswerMultipleChoice = 8

}

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

private GameUIState m_GameUIState;

//==========================================================================

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

//==========================================================================

private void StateChangeForGameUI(GameUIState newGameUIState) {

 m_GameUIState = newGameUIState;

 switch (newGameUIState) {

 case GameUIState.startScreen:

buttonAskQuestion.Visible = true;

buttonAskQuestion.Text = "Start";

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

textBoxAskQuestion.Visible = false;

SetAnswerButtonVisibility(false);

SetDifficultyButtonVisibility(false);

break;

 case GameUIState.waitForNextQuestion:

setQuestionText("List answer details here... \r\n" +

"Lots of space to write...\r\n" +

"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 //ПОЛЕ ИГРЫ располагается под пользовательскими

//элементами управления

textBoxAskQuestion.Height = pictureBoxGameBoard.Top - 2;

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

//элементами управления

textBoxAskQuestion.Top = pictureBoxGameBoard.Top + pictureBoxGameBoard.Height + 2;

textBoxAskQuestion.Height = this.Height - textBoxAskQuestion.Top;

#endif

break;

 case GameUIState.waitForUserToStateKnowledge:

SetTextForVocabularyQuestion;

textBoxAskQuestion.Visible = true;

buttonAskQuestion.Visible = false;

SetAnswerButtonVisibility(false);

SetDifficultyButtonVisibility(true);

#if PLAYFIELD_ON_BOTTOM //ПОЛЕ ИГРЫ располагается под пользовательскими

//элементами управления

textBoxAskQuestion.Height = buttonShowAnswers_AdvancedVersion.Top - 2;

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

//элементами управления

textBoxAskQuestion.Top = buttonShowAnswers_AdvancedVersion.Top + buttonShowAnswers_AdvancedVersion.Height + 2;

textBoxAskQuestion.Height = this.Height - textBoxAskQuestion.Top;

#endif

break;

 case GameUIState.waitForUserToAnswerMultipleChoice:

buttonAskQuestion.Visible = false;

SetDifficultyButtonVisibility(false);

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

SetAnswerButtonEnabled(true);

SetAnswerButtonVisibility(true);

  • Читать дальше
  • 1
  • ...
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

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