Metodo IDropTarget::D rop (oleidl.h)

Incorpora i dati di origine nella finestra di destinazione, rimuove il feedback di destinazione e rilascia l'oggetto dati.

Sintassi

HRESULT Drop(
  [in]      IDataObject *pDataObj,
  [in]      DWORD       grfKeyState,
  [in]      POINTL      pt,
  [in, out] DWORD       *pdwEffect
);

Parametri

[in] pDataObj

Puntatore all'interfaccia IDataObject nell'oggetto dati trasferito nell'operazione di trascinamento.

[in] grfKeyState

Stato corrente dei tasti di modifica della tastiera sulla tastiera. I valori possibili possono essere una combinazione di qualsiasi flag MK_CONTROL, MK_SHIFT, MK_ALT, MK_BUTTON, MK_LBUTTON, MK_MBUTTON e MK_RBUTTON.

[in] pt

Struttura POINTL contenente le coordinate del cursore correnti nelle coordinate dello schermo.

[in, out] pdwEffect

In input, puntatore al valore del parametro pdwEffect della funzione DoDragDrop . In caso di restituzione, deve contenere uno dei flag DROPEFFECT , che indica il risultato dell'operazione di eliminazione.

Valore restituito

Questo metodo restituisce S_OK se l'operazione ha esito positivo. Altri valori possibili includono quanto segue.

Codice restituito Descrizione
E_UNEXPECTED
Si è verificato un errore imprevisto.
E_INVALIDARG
Il parametro pdwEffect non è valido.
E_OUTOFMEMORY
Per questa operazione è disponibile memoria insufficiente.

Commenti

Questo metodo non viene chiamato direttamente, La funzione DoDragDrop chiama questo metodo quando l'utente completa l'operazione di trascinamento.

Nell'implementazione di Drop è necessario incorporare l'oggetto dati nella destinazione. Usare i formati disponibili in IDataObject, disponibili tramite pDataObj, insieme allo stato corrente delle chiavi del modificatore per determinare il modo in cui i dati devono essere incorporati, ad esempio il collegamento o l'incorporamento.

Oltre a incorporare i dati, è necessario pulire anche come si esegue nel metodo IDropTarget::D ragLeave :

  • Rimuovere eventuali commenti e suggerimenti di destinazione attualmente visualizzati.
  • Rilasciare tutti i riferimenti all'oggetto dati.
Si passa anche l'effetto di questa operazione all'applicazione di origine tramite DoDragDrop, in modo che l'applicazione di origine possa essere pulita dopo il completamento dell'operazione di trascinamento:
  • Rimuovere eventuali commenti e suggerimenti di origine visualizzati.
  • Apportare modifiche necessarie ai dati, ad esempio rimuovere i dati se l'operazione è stata spostata.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione oleidl.h

Vedi anche

Dodragdrop

IDropSource

IDropSourceNotify

Idroptarget

RegisterDragDrop

RevocaDragDrop