Взаимодействие программы с пользователем. Создание обработчика событий

Обновлен: Ноябрь 2007

На этом занятии вы узнаете, как создать обработчик событий.

Как было показано на предыдущих занятиях, элементы управления имеют свойства, методы и события и используются для создания интерфейса пользователя. События представляют собой действия, которые могут произойти в элементе управления. Например, может произойти щелчок элемента управления, в него может быть введен текст, на него может быть наведен указатель мыши и т. д.

Когда что-нибудь происходит, элемент управления вызывает событие. Это означает, что он отправляет сигнал программе, сообщая о том, что произошло какое-то событие. Затем программа проверяет существование методов обработки этого события. Такие методы вызываются обработчиками событий. В качестве примера можно привести метод, который запускается при нажатии кнопки (см. раздел Взаимодействие с пользователем. Использование кнопок).

Элементы управления могут вызывать различные типы событий, однако для каждого элемента управления всегда существует одно событие по умолчанию. Можно создать обработчики событий для различных событий элемента управления. На этом занятии будет создан обработчик событий по умолчанию (Click) для кнопки. Это событие происходит при нажатии кнопки. Далее будут созданы обработчики для событий MouseEnter и MouseLeave. Существуют события, происходящие при наведении указателя мыши на элемент управления.

Практическое задание

Обработка событий Click

  1. В меню Файл выберите Создать проект.

  2. В диалоговом окне Создание проекта в области Шаблоны выберите Приложение Windows.

  3. В окне Имя введите EventHandler и нажмите кнопку ОК.

    Откроется новый проект Windows Forms.

  4. Из окна Панель элементов перетащите в форму элемент управления Button.

  5. В окне Свойства установите для свойства AutoSize значение True.

  6. В меню Вид выберите команду Код, чтобы открыть редактор кода.

    Над редактором кода располагаются два раскрывающихся списка. Список слева содержит список всех элементов управления на форме, в дополнение к Form1, Общие и События Form1. В списке справа содержится список событий, доступных для элемента, выбранного в левом списке.

  7. В поле слева выберите Button1.

  8. В поле справа выберите Click.

    В редакторе кода отобразится новый обработчик событий с именем Button1_Click.

    9850yw98.alert_note(ru-ru,VS.90).gifПримечание.

    Чтобы ввести обработчик событий по умолчанию для элемента управления, дважды щелкните его на форме.

  9. В обработчике событий Button1_Click введите следующий код.

    MsgBox("You clicked the button")
    
  10. Нажмите клавишу F5 для запуска приложения. Щелкните элемент управления Button1, чтобы открыть окно сообщения.

Добавление других обработчиков событий

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

Обработка событий MouseEnter

  1. В редакторе кода убедитесь, что в левом раскрывающемся списке выбран элемент управления Button1, затем выберите MouseEnter в правом раскрывающемся списке.

    В редакторе кода отобразится новый обработчик событий с именем Button1_MouseEnter.

  2. В обработчике событий Button1_MouseEnter введите следующий код.

    Button1.Text = "The Mouse has entered"
    

    Нажмите клавишу F5 для запуска приложения. Наведите указатель мыши на кнопку. Обратите внимание, что при наведении указателя мыши на элемент управления Button1 текст на кнопке изменяется.

Обратите внимание, что в предыдущем примере при наведении указателя мыши на элемент управления Button1 текст кнопки изменяется, однако при выходе указателя за границы элемента текст не восстанавливается. Если требуется изменять текст при выходе указателя мыши за границы кнопки, то помимо события MouseEnter следует также обрабатывать и событие MouseLeave.

Обработка событий MouseLeave

  1. В редакторе кода убедитесь, что в левом раскрывающемся списке выбран элемент управления Button1, затем выберите MouseLeave в правом раскрывающемся списке.

    В редакторе кода отображается новый обработчик событий с именем Button1_MouseLeave.

  2. В обработчике событий Button1_MouseLeave введите следующий код.

    Button1.Text = "The mouse has left"
    
  3. Нажмите клавишу F5 для запуска приложения.

    Теперь при наведении указателя мыши на кнопку текст изменяется на The mouse has entered, а при выходе указателя мыши за границы кнопки – на The mouse has left.

Следующие действия

На этом занятии было рассмотрено создание обработчика событий с помощью редактора кода. На этом этапе можно перейти к следующему уроку Получение выбора пользователя. Использование флажков и переключателей или более подробно ознакомиться с обработчиками событий в разделе Подробное рассмотрение. Совместное использование обработчика событий. Если был выбран второй вариант, следует сохранить проект EventHandler для использования в следующем занятии.

См. также

Ссылки

Общие сведения об элементе управления Label (Windows Forms)

Общие сведения об элементе управления TextBox (Windows Forms)

Другие ресурсы

Создание внешнего вида программы. Введение в Windows Forms

Изменения в свойствах, методах и событиях элементов управления для пользователей Visual Basic 6.0