Vcl.Controls.TDragObjectEx

De RAD Studio API Documentation
Aller à : navigation, rechercher

Vcl.Controls.TDragObjectSystem.TObjectTDragObjectEx

Delphi

TDragObjectEx = class(TDragObject)

C++

class PASCALIMPLEMENTATION TDragObjectEx : public TDragObject

Propriétés

Type Visibilité  Source Unité  Parent
class public
Vcl.Controls.pas
Vcl.Controls.hpp
Vcl.Controls Vcl.Controls

Description

TDragObjectEx est la classe de base utilisée pour gérer les opérations de glisser.

Utilisez TDragObjectEx en tant que classe de base lorsque vous créez un objet déplacement personnalisé pour gérer les opérations de glisser-déplacer ou glisser-ancrer. A la différence de son ancêtre immédiat, TDragObject, TDragObjectEx et ses descendants sont libérés automatiquement à la fin d'une opération de glisser.

Les applications peuvent créer l'objet glisser personnalisé dans l'événement OnStartDrag du contrôle déplacé. Pour accepter le relâchement d'un objet, utilisez la fonction publique IsDragObject dans l'événement OnDragOver de l'objet.

Dans les applications qui n'ont pas besoin de surcharger les méthodes virtuelles de TDragObjectEx, un objet déplacement est automatiquement créé pour gérer les opérations de glisser.

Les objets déplacement permettent une gestion plus souple des opérations de glisser. Normalement, le paramètre Source des événements OnDragOver et OnDragDrop désigne le contrôle ayant commencé l'opération glisser-déplacer. Si plusieurs contrôles de types différents peuvent commencer un glissement du même type de données (par exemple un nom de fichier, du texte, un montant en francs, etc.), la source doit être gérée par chaque type de contrôle. Un objet déplacement permet à la cible de gérer des sources déplacement en tant que classe unique d'objet car chaque contrôle source crée le même type d'objet déplacement dans leur événement OnStartDrag. Les gestionnaires d'événement OnDragOver et OnDragDrop peuvent savoir si la source est un objet déplacement ou un contrôle en appelant IsDragObject.

Les objets déplacement peuvent passer entre différentes DLL ou à l'intérieur de l'exécutable principal. Cela est pratique si vous n'utilisez pas de packages mais souhaitez quand même que les opérations glisser fonctionnent entre des fiches implémentées dans des .EXE vers des fiches implémentées dans des .DLL.

Voir aussi