IDropTarget::D rop-Methode (oleidl.h)
Bindet die Quelldaten in das Zielfenster ein, entfernt Das Zielfeedback und gibt das Datenobjekt frei.
Syntax
HRESULT Drop(
[in] IDataObject *pDataObj,
[in] DWORD grfKeyState,
[in] POINTL pt,
[in, out] DWORD *pdwEffect
);
Parameter
[in] pDataObj
Ein Zeiger auf die IDataObject-Schnittstelle für das Datenobjekt, das im Drag-and-Drop-Vorgang übertragen wird.
[in] grfKeyState
Der aktuelle Status der Tastaturmodifizierertasten auf der Tastatur. Mögliche Werte können eine Kombination aus flags MK_CONTROL, MK_SHIFT, MK_ALT, MK_BUTTON, MK_LBUTTON, MK_MBUTTON und MK_RBUTTON sein.
[in] pt
Eine POINTL-Struktur , die die aktuellen Cursorkoordinaten in Bildschirmkoordinaten enthält.
[in, out] pdwEffect
Zeigen Sie bei der Eingabe auf den Wert des pdwEffect-Parameters der DoDragDrop-Funktion . Bei der Rückgabe muss eines der DROPEFFECT-Flags enthalten sein, das angibt, was das Ergebnis des Löschvorgangs wäre.
Rückgabewert
Diese Methode gibt S_OK bei Erfolg zurück. Weitere mögliche Werte sind:
Rückgabecode | Beschreibung |
---|---|
|
Ein unerwarteter Fehler ist aufgetreten. |
|
Der pdwEffect-Parameter ist ungültig. |
|
Für diesen Vorgang ist nicht genügend Arbeitsspeicher verfügbar. |
Hinweise
Diese Methode wird nicht direkt aufgerufen. Die DoDragDrop-Funktion ruft diese Methode auf, wenn der Benutzer den Drag-and-Drop-Vorgang abgeschlossen hat.
Bei der Implementierung von Drop müssen Sie das Datenobjekt in das Ziel integrieren. Verwenden Sie die in IDataObject verfügbaren Formate, die über pDataObj verfügbar sind, zusammen mit dem aktuellen Status der Modifiziererschlüssel, um zu bestimmen, wie die Daten integriert werden sollen, z. B. Verknüpfen oder Einbetten.
Zusätzlich zur Integration der Daten müssen Sie auch sauber wie in der IDropTarget::D ragLeave-Methode:
- Entfernen Sie alle aktuell angezeigten Zielfeedbacks.
- Geben Sie alle Verweise auf das Datenobjekt frei.
- Entfernen Sie alle angezeigten Quellfeedbacks.
- Nehmen Sie alle erforderlichen Änderungen an den Daten vor, z. B. das Entfernen der Daten, wenn der Vorgang eine Verschiebung war.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | oleidl.h |