Происходит, когда данные перетаскиваются над целевым объектом, в который перетаскиваются данные, а свойство OLEDropMode этого целевого объекта установлено в 1 – Enabled.
PROCEDURE Object.OLEDragOver LPARAMETERS oDataObject, nEffect, nButton, nShift, nXCoord, nYCoord, nState |
Возвращаемое значение
- oDataObject
-
Объектная ссылка на OLE drag-and-drop DataObject, используемый методами GetData и GetFormat
для возврата данных и формата данных в DataObject.
- nEffect
-
Значение, посылаемое событию OLEGiveFeedback, указывающее на производимое действие, если данные перетащены на целевой объект. nEffect является начальным значением, которое показывает, что операции OLE drag-and-drop поддерживаются источником данных для перетаскивания. В приведенной ниже таблице перечислены значения для nEffect с описанием каждого действия.
nEffect константа Foxpro.h Описание 0
DROPEFFECT_NONE
Объект, на который перетаскиваются данные не принимает данные или операция "бросания" прекращена.
1
DROPEFFECT_COPY
Данные копируются из источника в целевой объект.
2
DROPEFFECT_MOVE
Данные перемещаются из источника в целевой объекта.
4
DROPEFFECT_LINK
Данные источника связываются с целевым обеъктов (не копируются и не перемещаются, а только связываются).
- nButton
-
Содержит число, которое указывает - какая клавиша мыши была нажата, когда данные перетаскивались над целевым объектом операции: 1 (левая), 2 (правая) или 4 (средняя).
- nShift
-
Содержит число, указывающее состояние клюей модификаторов, когда данные перетаскивались над целевым объектом операции. Действительными ключами-модификаторами являются SHIFT, CTRL и ALT. Значение, возвращаемое в параметре nShift для индивидуальных ключей-модификаторов перечислены в приведенной ниже таблице.
nShift Ключ модификатора 1
SHIFT
2
CTRL
4
ALT
Если более чем одна клавиша ключа-модификатора удерживалась нажатой, то аргумент nShift содержит сумму значений ключей-модификаторов. Например, если пользователь удерживал клавишу CTRL в момент, когда отпускалась клавиша мыши, то аргумент nShift содержит 2. Но, если пользователь удерживал нажатыми CTRL+ALT в момент, когда отпускалась клавиша мыши, аргумент nShift будет содержать 6.
- nXCoord, nYCoord
-
Содержит горизонтальную (nXCoord) и вертикальную (nYCoord) позиции указателя мыши внутри формы, когда данные перетаскивались над целевым объектом операции drop. Эти координаты выражаются в терминах координатной системы формы и в единицах, определяемых значением свойства формы ScaleMode.
- nState
-
Содержит число, определяющее направление, в котором перетаскивались данные - в элемент управления или объект, внутрь объекта или элемента управления или наружу из элемента управления или объекта. Значения для nState перечислены в приведенной ниже таблице.
nState Описание 0
Данные перетаскиваются в элемент управления или объект. Свойства OLEDropEffects и OLEDropHasData должны быть установлены, когда nState равен нулю.
1
Данные перетаскиваются из элемента управления или объекта.
2
Данные перетаскиваются внутри элемента управления или объекта.
Примечания
Применяется к: CheckBox | ComboBox | CommandButton | CommandGroup | Container Object | Control Object | EditBox | Form | Grid | Image | Label | Line | ListBox | OptionButton | OptionGroup | Page | PageFrame | ProjectHook Object | Shape | Spinner | TextBox | ToolBar
OLEDragOver is a drop target event that only occurs when the OLEDropMode property for the control or object is set to 1 – Enabled. Это событие не происходит, если свойство OLEDropMode установлено в 0 – Disabled или в 2 – Pass to Container.
Отметьте, что вы должны избегать состояния ожидания в событии OLEDragOver, которое могут вызвать такие команды, как WAIT WINDOW и MESSAGEBOX().
Смотрите также
Справочное руководство
OLE Drag-and-DropСобытие OLEGiveFeedback
Свойство OLEDropEffects
Свойство OLEDropHasData
Свойство OLEDropMode