netlib.narod.ru< Назад | Оглавление | Далее >

Одиночные и двойные щелчки

Вот два события мыши самого высокого уровня:


События Control (выборочно)



Событие Метод Делегат Аргумент

Click OnClick EventHandler EventArgs
DoubleClick OnDoubleClick EventHandler EventArgs


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

Событие Click происходит, если нажать и отпустить любую кнопку мыши, когда курсор располагается над элементом управления или клиентской областью формы. Это событие происходит прямо перед соответствующим событием MouseUp. Если нажать кнопку мыши над одним элементом управления, а отпустить ее над другим, событие Click не генерируется.

Событие DoubleClick возникает непосредственно перед вторым событием MouseUp при двойном щелчке. Однако второе нажатие кнопки должно случиться в течение определенного периода времени после первого, и курсор в это время может отойти не дальше, чем на определенное расстояние от места первого щелчка. Вот типичная последовательность событий при двойном щелчке:

Я использовал метод OnClick, чтобы инициировать печать в программе PrintableForm из главы 5. При этом мне не нужно было знать ни позицию курсора при нажатии кнопки мыши, ни даже кнопку, которая была нажата.

Но чаше программы устанавливают обработчики событий Click и DoubleClick для созданных ими элементов управления. Как будет показано в главе 12, нормальный ход обработки события Click для кнопки формы включает определение момента щелчка. Кнопки (и другие элементы управления) также генерируют событие Click, когда кнопку нажимают при помощи клавиатуры. Таким образом, событие Click — удобный способ объединения информации, вводимой с клавиатуры и мышью.


netlib.narod.ru< Назад | Оглавление | Далее >

Сайт управляется системой uCoz