DragPrivate()
Синтаксис
Result = DragPrivate(Type [, Actions])
Описание
Начинает "внутреннюю" операцию Drag & Drop (Перетаскивание мышью). В отличие от других функций, начинающих Drag & Drop, здесь данные можно отпустить только внутри приложения (Данные, перетаскиваемые с помощью таких функций как DragText() или DragImage() могут быть приняты другими приложениями). Эту функцию следует использовать для добавления функциональности Drag & Drop между Гаджетами или Окнами с данными, которые не понятны другим приложениям.
Параметры
Type Этот параметр может быть любым целочисленным значением, идентифицирующим данные для перетаскивания в приложении. То же самое значение следует передать в функции EnableGadgetDrop() или EnableWindowDrop() для тех Гаджетов/Окон, которые должны принимать эти данные.
Таким способом можно точно указать, какие внутренние операции перетаскивания принимаются каким Гаджетом/Окном, что позволяет реализовывать сложные схемы Drag & Drop.Actions (дополн.) Комбинация действий Drag & Drop, которые разрешены для данных. Если параметр не задан, единственным разрешённым действием будет то #PB_Drag_Copy. Возможные действия: (их можно сочетать с помощью оператора '|'), #PB_Drag_Copy: Можно копировать данные #PB_Drag_Move: Можно перемещать данные #PB_Drag_Link: Можно создать ссылку на данныеПользователь может выбрать, какое из этих действий выполнить, нажав клавиши-модификаторы вроде Ctrl или Shift. Какие действия будут выполнены, зависит также от того, что разрешено принимающей стороной перетаскивания.
Возвращаемое значение
Возвращает одно из упомянутых выше значений действий Drag & Drop чтобы сообщить, какое действие выполнил пользователь, или значение #PB_Drag_None, если пользователь прервал выполнение операции Drag & Drop.
Комментарии
Drag & Drop можно начать в любой момент, но левая кнопка мыши должна быть нажата, так как иначе операция немедленно закончится без результата. Обычно операция Drag & Drop начинается когда Гаджет породил событие, имеющее по классификации функции EventType() тип #PB_EventType_DragStart.
Если операция не была прервана, цикл событий получит сообщения #PB_Event_WindowDrop или #PB_Event_GadgetDrop с типом #PB_Drop_Private.
См. также
DragText(), DragImage(), DragFiles(), DragOSFormats(), SetDragCallback()
Поддерживаемые OS
Windows, Linux