Поделиться через


Шаг 3. Завершение игры

Чтобы создать конец игры, необходимо сделать рабочим элемент управления Label с текстом Финиш.Это выполняется путем добавления обработчика событий для события MouseEnter элемента управления Label.

ПримечаниеПримечание

Если было изучено "Учебное руководство 1. Создание приложения для просмотра рисунков", то должно быть известно, что такое обработчик событий.Большая часть элементов управления содержит различные события, которые они могут вызывать.Программа просмотра изображений использует у элемента управления Button событие Click и у элемента управления CheckBox событие CheckChanged.В этом руководстве у элемента управления Label используется событие MouseEnter, которое возникает каждый раз, когда указатель мыши входит в элемент управления.Элемент управления Label содержит четыре десятка событий.Большая их часть имеет интуитивно понятные имена, например, DoubleClick, Resize, TextChanged.Далее в этом руководстве приводится список имен событий.

ссылка на видеоДля видео версии этого раздела см. в разделе Учебное руководство 2. Создание лабиринта в Visual Basic - видео 2 OR Учебное руководство 2. Создание лабиринта в c# - видео 2.

Завершении игры

  1. Выберите элемент управления finishLabel, затем щелкните значок Событие (выглядит как изображением молнии) в верхней части окна Свойства.При его нажатии в окне вместо свойств отображаются события элемента управления.Чтобы вернуться к списку свойств, щелкните по значку Свойства.Теперь сделайте так, чтобы в окне Свойства отображались все события для элемента управления finishLabel.Прокрутите вниз до события MouseEnter.Упомянутые ранее значки и событие MouseEnter показаны на рисунке ниже.

    Значок события

    Значок события

    Значок свойства

    Значок свойства

    Событие MouseEnter

    Событие MouseEnter

  2. Дважды щелкните слово MouseEnter.В результате этого действия интегрированная среда разработки автоматически добавляет метод обработчика событий в форму и показывает его в редакторе кода. Код представлен ниже.

    Private Sub finishLabel_MouseEnter(sender As System.Object, e As System.EventArgs) Handles finishLabel.MouseEnter
    
    End Sub
    
    private void finishLabel_MouseEnter(object sender, EventArgs e)
    {
    
    }
    

    Метод обработчика событий выполняется каждый раз, когда указатель мыши входит в метку.

  3. Необходимо, чтобы программа открывало окно сообщений, в котором показывалось сообщение "Congratulations!" (Поздравляем!), а затем программа закрывалась.Для этого добавьте строки кода, которые представлены ниже (включая комментарий).

    Private Sub finishLabel_MouseEnter(sender As System.Object, e As System.EventArgs) Handles finishLabel.MouseEnter
        ' Show a congratulatory MessageBox, then close the form.
        MessageBox.Show("Congratulations!")
        Close()
    End Sub
    
    private void finishLabel_MouseEnter(object sender, EventArgs e)
    {
        // Show a congratulatory MessageBox, then close the form.
        MessageBox.Show("Congratulations!");
        Close();
    }
    
    ПримечаниеПримечание

    Метод finishLabel_MouseEnter() содержит два оператора.Первый оператор вызывает метод с именем Show(), открывающий окно сообщений, в котором содержится текст, размещенный внутри кавычек.

  4. Дополнительные сведения о происходящем можно получить путем изучения кода с помощью интегрированной среды разработки.Расположите указатель мыши поверх слова MessageBox.Должна отобразиться следующая подсказка.

    Подсказка

    Подсказка

    ПримечаниеПримечание

    Интегрированная среда разработки показывает, что существует класс с именем System.Windows.Forms.MessageBox, и метод Show(), который вызывается внутри этого класса.Не требуется полного понимания, чтобы создать работающее окно сообщений, однако рекомендуется ознакомиться с дополнительными сведениями.

    По второму оператору — каждая форма содержит встроенный метод с именем Close(), вызов которого приводит к закрытию формы.Некоторые программы содержат несколько окон, между которыми может переключаться пользователь.При работе с такой программой, он закрывает текущее окно, но оставляет оставшиеся окна программы работать.(например, если существует несколько одновременно открытых документов Microsoft Office Word, закрытие окна документа приводит к закрытию этого документа, но Office Word остается открытым). Одна в программе такой, какая разрабатывается в этом руководстве, существует только одно окно. Закрытие этого окна приводит к прекращению выполнения, поэтому закрытие формы приводит к закрытию программы.

  5. Сохраните и выполните программу.Поместите указатель мыши поверх метки Финиш.Это должно привести к появлению сообщения, затем программа закрывается.

Продолжить или повторить пройденный материал