Иллюстрированный самоучитель по Architecture .NET

Обработка событий в Windows Forms. Документация по обработке событий. Событие MouseDown (Кнопка мыши нажата).

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

В Windows Forms (Формы Windows) применяется модель обработки событий NET, в которой делегаты используются для того, чтобы связать события с обрабатывающими их методами. В классах Windows Forms (Формы Windows) используются групповые делегаты. Групповой делегат содержит список связанных с ним методов. Когда в приложении происходит событие, управляющий элемент возбуждает событие, вызвав делегат для этого события. Потом делегат вызывает связанные с ним методы.

Для того чтобы добавить gе iciar к событию, в C++ используется перегруженный оператор +=. Мы добавляем метод Forml_MouseDown к событию MouseDown (Кнопка мыши нажата).

MouseDown += new MouseEventHandler
(this, Forml_MoaseDown),

Вскоре мы увидим этот код в программе.

Документация по обработке событий

Документацию, касающуюся событий и их обработки, можно найти в справочнике по .NET Framework (.NET Framework Reference). На рис 6.6 показаны предопредепенные события, связанные с классом Form (Форма).

Иллюстрированный самоучитель по Architecture .NET › Создание графических пользовательских интерфейсов › Обработка событий в Windows Forms. Документация по обработке событий. Событие MouseDown (Кнопка мыши нажата).
Рис. 6.6. Документация по событиям класса Form (Форма)

Событие MouseDown (Кнопка мыши нажата)

Событие MouseDown (Кнопка мыши нажата) является одним из предопределенных событий класса Control (Элемент управления), от которого порожден класс Form (Форма).

public: _event MouseEventHandler* MouseDown;

А вот и объявление обработчика этого события, MouseEventHandler:

public _gc _delegate void MouseEventHandler(
Object* sender, // отправитель
MouseEventArgs* e
);

В качестве параметра обработчик событий получает объект класса MouseEventArgs (производный от класса EventArgs). Свойства этого объекта доступны только для чтения и содержат информацию, связанную с данным событием:

  • Button (Кнопка) определяет, какая кнопка была нажата,
  • Clicks (Щелчки) определяет, сколько раз была нажата и отпущена кнопка,
  • Свойство Delta (Дельта) является счетчиком оборотов колесика мыши;
  • X и Y – координаты точки, в которой находился указатель в момент нажатия кнопки мыши
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.