Имеет место, когда пользователь нажимает кнопку мыши.
Применение:
CheckBox, ComboBox, CommandButton, CommandGroup, Объект Container, Объект Control, EditBox, Form, Grid, Header, Image, Label, Line, ListBox, OptionButton, OptionGroup, Page, PageFrame, Shape, Spinner, TextBox, ToolBar.
Синтаксис:
PROCEDURE Object.MouseDown [LPARAMETERS nIndex, nButton, nShift, nXCoord, nYCoord] - Или - LPARAMETERS nButton, nShift, nXCoord, nYCoord
Параметры:
Необходимо включить в процедуру события оператор LPARAMETERS или PARAMETERS и задать имя для каждого параметра. Visual FoxPro передает событию MouseDown четыре или пять параметров в следующем порядке.
nIndex
Содержит номер, который однозначно идентифицирует элемент управления, если он принадлежит массиву элементов управления. Параметр nIndex передается только в том случае, если элемент управления берется из массива.
nButton
Содержит число, задающее кнопку, нажатие которой вызвало данное событие: 1 (левая), 2 (правая) или 4 (средняя).
nShift
Содержит число, которое определяет состояние клавиш SHIFT, CTRL и ALT в момент нажатия кнопки, заданной аргументом nButton.
Если какая-либо из этих клавиш была нажата, устанавливается соответствующий бит. Аргумент nShift представляет собой сумму этих битов, и в нем наименее значащие биты представляют клавиши SHIFT (бит 0), CTRL (бит 1) и ALT (бит 2). Эти биты соответствуют значениям 1, 2 и 4. Параметр nShift характеризует состояние данных клавиш. Могут быть установлены некоторые из битов, все биты или ни один из них; это говорит о том, что нажаты некоторые из клавиш, все три или ни одна. Например, если были нажаты клавиши CTRL и ALT, значение параметра nShift равно 6.
nXCoord, nYCoord
Содержит текущее значение горизонтальной (nXCoord) и вертикальной (nYCoord) позиции указателя мыши в пределах объекта Form. Эти координаты всегда выражаются относительно заданной системы координат объекта Form, с использованием единицы измерения, определенной установкой свойства ScaleMode.
Комментарии:
С помощью процедуры события MouseDown можно задать действия, которые следует выполнять при нажатии данной кнопки мыши. В отличие от событий Click и DblClick, событие MouseDown позволяет различать левую, правую и среднюю кнопки мыши. Вы также можете написать код для комбинированных действий мыши и клавиатуры, использующих клавиши-модификаторы SHIFT, CTRL и ALT.
Замечание. С помощью события MouseMove можно реагировать на событие, вызываемое движением мыши. Аргумент nButton для событий MouseDown и MouseUp отличается от аргумента nButton, используемого событием MouseMove. В случае MouseDown или MouseUp аргумент nButton указывает ровно одну кнопку для каждого события, в случае MouseMove этот аргумент указывает текущее состояние всех кнопок.