- Событие OnDragOver
Событие OnDragOver
Событие OnDragOver происходит в момент, когда перетаскиваемый объект пересек границу данного компонента и оказался внутри его контура. Заканчивается событие, когда объект покидает компонент, пересекая его границу. Обработчик события OnDragOver используется для того, чтобы дать сигнал о готовности компонента принять перетаскиваемый объект в том случае, если пользователь отпустит его над данным компонентом. Если компонент готов принять объект, то в обработчике надо задать значение параметра Accept, равное true.
Впрочем, это значение по умолчанию равно true, так что его можно не задавать. Обработчик может быть и пустым, что будет означать готовность компонента принять любой объект. Обработчик нужен в любом случае (даже пустой), иначе приложение не получит сообщения о приеме компонента.
Во время перетаскивания над компонентом объекта форма курсора мыши может изменяться, сигнализируя пользователю о готовности компонента принять объект. Для обеспечения этого необходимо во время проектирования задать соответствующее значение свойства компонента DragCursor. Параметр Source обработчика события определяет перетаскиваемый объект, а параметр Sender — сам компонент. Параметры X и Y дают координаты точки экрана в пикселах. Параметр State типа TDragState определяет состояние перетаскиваемого объекта по отношению к другим объектам. Значения этого параметра приведены в табл. 22.4.
Таблица 22.4. Значения параметра State
Значение | Описание |
dsDragEnter | Курсор мыши входит в пределы компонента |
dsDragMove | Курсор мыши перемещается в пределах компонента |
dsDragLeave | Курсор мыши выходит за пределы компонента |