RegisterDragDrop, fonction (ole2.h)
Inscrit la fenêtre spécifiée sous la forme d’une fenêtre pouvant être la cible d’une opération de glisser-déplacer OLE et spécifie le instance IDropTarget à utiliser pour les opérations de déplacement.
Syntaxe
HRESULT RegisterDragDrop(
[in] HWND hwnd,
[in] LPDROPTARGET pDropTarget
);
Paramètres
[in] hwnd
Handle vers une fenêtre qui peut être une cible pour une opération de glisser-déplacer OLE.
[in] pDropTarget
Pointeur vers l’interface IDropTarget sur l’objet qui doit être la cible d’une opération de glisser-déplacer dans une fenêtre spécifiée. Cette interface est utilisée pour communiquer des informations de glisser-déplacer OLE pour cette fenêtre.
Valeur retournée
Cette fonction retourne S_OK en cas de réussite. Les autres valeurs possibles sont les suivantes.
Code de retour | Description |
---|---|
|
Handle non valide retourné dans le paramètre hwnd. |
|
La fenêtre spécifiée a déjà été inscrite en tant que cible de déplacement. |
|
Mémoire insuffisante pour l’opération. |
Remarques
Si votre application peut accepter des objets supprimés pendant les opérations de glisser-déplacer OLE, vous devez appeler la fonction RegisterDragDrop . Effectuez cette opération chaque fois qu’une de vos fenêtres d’application est disponible en tant que cible de déplacement potentielle ; autrement dit, lorsque la fenêtre n’apparaît pas affichée à l’écran.
Le thread d’application qui appelle la fonction RegisterDragDrop doit pomper les messages, sans doute en appelant la fonction GetMessage avec un paramètre hWndNULL, car OLE crée des fenêtres sur le thread qui nécessitent le traitement des messages. Si cette exigence n’est pas remplie, toute application qui fait glisser un objet sur la fenêtre inscrite en tant que cible de déplacement se bloque jusqu’à ce que l’application cible se ferme.
La fonction RegisterDragDrop n’inscrit qu’une fenêtre à la fois. Vous devez donc l’appeler pour chaque fenêtre d’application capable d’accepter des objets supprimés.
Lorsque la souris passe sur des parties non observées de la fenêtre cible pendant une opération de glisser-déplacer OLE, la fonction DoDragDrop appelle la méthode IDropTarget ::D ragOver spécifiée pour la fenêtre active. Lorsqu’une opération de suppression se produit réellement dans une fenêtre donnée, la fonction DoDragDrop appelle IDropTarget ::D rop.
La fonction RegisterDragDrop appelle également la méthode IUnknown ::AddRef sur le pointeur IDropTarget .
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | ole2.h |
Bibliothèque | Ole32.lib |
DLL | Ole32.dll |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour