Основы офисного программирования и язык VBA

       

Событие MouseMove (Мышь движется)


Происходит, когда пользователь двигает мышь. Это событие применимо к диалоговым окнам, элементам управления и меткам. Оно непрерывно генерируется при прохождении указателя мыши по объекту. При сдвиге диалогового окна событие MouseMove может возникнуть и при постоянном положении мыши. Если диалоговое окно сдвигается в процедуре обработки этого события, может возникнуть непрерывная цепь событий MouseMove.

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

Вот заголовок процедуры обработки события MouseMove для набора страниц и полосы вкладок:

Private Sub объект_MouseMove (index As Long, ByVal Button As fmButton, ByVal Shift As fmShiftState, ByVal X As Single, ByVal Y As Single),

а для других элементов:

Private Sub объект_MouseMove (ByVal Button As fmButton, ByVal Shift As fmShiftState, ByVal X As Single, ByVal Y As Single),

Здесь параметры объект, index, Button, Shift, X и Y имеют тот же смысл, что и для событий MouseDown и MouseUp рассмотренных выше. Но множество значений для параметра Button у MouseMove больше.

ЗначениеОписание
0Никакая кнопка не нажата.
1Нажата левая кнопка.
2Нажата правая кнопка.
3Нажаты левая и правая кнопки.
4Нажата средняя кнопка.
5Нажаты левая и средняя кнопки.
6Нажаты средняя и правая кнопки.
7Нажаты все три кнопки.

Значение, передаваемое в параметре Button, позволяет определить, какие кнопки мыши нажаты при ее движении, а параметр Shift - выяснить, какие из управляющих клавиш Shift, Ctrl и Alt при этом нажаты.



Содержание раздела