Происходит, когда пользователь двигает мышь. Это событие применимо к диалоговым окнам, элементам управления и меткам. Оно непрерывно генерируется при прохождении указателя мыши по объекту. При сдвиге диалогового окна событие 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 при этом нажаты.