Condividi tramite


CView::OnDropEx

Chiamato dal framework quando l'utente rilascia un oggetto dati su una destinazione di rilascio valida.

virtual DROPEFFECT OnDropEx(
   COleDataObject* pDataObject,
   DROPEFFECT dropDefault,
   DROPEFFECT dropList,
   CPoint point 
);

Parametri

  • pDataObject
    Punta a COleDataObject che viene rilasciato nella destinazione di rilascio.

  • dropDefault
    L'effetto che l'utente ha scelto per l'operazione di trascinamento predefinita in base allo stato del tasto corrente.Può essere DROPEFFECT_NONE.Effetti di trascinamento vengono illustrati nella sezione relativa alle osservazioni.

  • dropList
    Un elenco degli effetti di trascinamento supportata da origine di trascinamento.I valori dell'effetto di rilascio possono essere combinate utilizzando l'operatore OR bit per bit (|) operazione.Effetti di trascinamento vengono illustrati nella sezione relativa alle osservazioni.

  • point
    La posizione corrente del mouse all'area client di visualizzazione.

Valore restituito

L'effetto di rilascio derivato dal tentativo di rilascio di percorso specificato da point.Questa operazione deve essere uno dei valori letti dal dropEffectList.Effetti di trascinamento vengono illustrati nella sezione relativa alle osservazioni.

Note

L'implementazione predefinita prevede di non eseguire alcuna operazione e restituire un valore fittizio (-1) per indicare che il framework deve chiamare il gestore OnDrop.

Eseguire l'override di questa funzione per implementare l'effetto di un trascinamento della selezione del pulsante destro del mouse.Il trascinamento della selezione del pulsante destro del mouse in genere visualizzato un menu di scelta quando il pulsante destro del mouse viene rilasciato.

L'override OnDropEx devono eseguire una query per il pulsante destro del mouse.È possibile chiamare GetKeyState o archiviare lo stato del pulsante destro del mouse dal gestore OnDragEnter.

  • Se il pulsante destro del mouse viene premuto, l'override deve visualizzare un menu di scelta rapida che offre il supporto di effetti di trascinamento dall'origine di trascinamento.

    • Esaminare dropList per determinare gli effetti di trascinamento supportate dall'origine di trascinamento.Abilita solo queste azioni nel menu di scelta rapida.

    • Utilizzare SetMenuDefaultItem per impostare l'azione predefinita basata su dropDefault.

    • Infine, intraprendere le azioni indicati dalla selezione utente dal menu di scelta rapida.

  • Se il pulsante destro del mouse non è premuto, l'override deve elaborare questa durante una richiesta standard di trascinamento.Utilizzare l'effetto di rilascio specificato in dropDefault.In alternativa, l'override possono restituire il valore fittizio (-1) per indicare che OnDrop eseguirà questa operazione di trascinamento.

Utilizzare pDataObject per esaminare COleDataObject per il formato e i dati di dati degli Appunti inviate al punto specificato.

Effetti di trascinamento descrive l'azione associata a un'operazione di trascinamento.Vedere il seguente elenco degli effetti di trascinamento:

  • La selezione diDROPEFFECT_NONE A non è consentita.

  • l'operazione di copia diDROPEFFECT_COPY A verrebbe eseguita.

  • l'operazione di spostamento diDROPEFFECT_MOVE A verrebbe eseguita.

  • Il collegamento diDROPEFFECT_LINK Ai dati trascinati ai dati originali verrebbe impostato.

  • DROPEFFECT_SCROLL indica che l'operazione di spostamento di trascinamento sta per verificarsi o sta verificando nel database di destinazione.

Per ulteriori informazioni sull'impostazione del comando di menu predefinito, vedere SetMenuDefaultItem in Windows SDK e CMenu::GetSafeHmenu nel volume.

Requisiti

Header: afxwin.h

Vedere anche

Riferimenti

Classe di modello CView

Grafico della gerarchia

CView::OnDragEnter

CView::OnDragOver

CView::OnDrop

CView::OnDragLeave

COleDropTarget::OnDropEx