Partilhar via


CView::OnDropEx

Chamado pela estrutura quando o usuário liberar um objeto de dados sobre o alvo da operação de soltar válido.

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

Parâmetros

  • pDataObject
    Pontos a COleDataObject que é solto no destino alvo.

  • dropDefault
    O efeito que o usuário escolheu a operação de soltar padrão com base no estado principal atual.Pode ser DROPEFFECT_NONE.Os efeitos de soltar são discutidos na seção comentários.

  • dropList
    Uma lista dos efeitos que a origem da operação de soltar oferece suporte.Os valores do efeito de soltar podem ser combinados usando o OPERADOR bit a bit (**|**Operação.)Os efeitos de soltar são discutidos na seção comentários.

  • point
    A posição atual do mouse em relação à área cliente de exibição.

Valor de retorno

O efeito da operação que resultou try subjacente no local especificado por point.Isso deve ser um dos valores indicados pelo dropEffectList.Os efeitos de soltar são discutidos na seção comentários.

Comentários

a implementação padrão é não fazer nada e retornar um valor fictício (-1) para indicar que a estrutura deve chamar o manipulador de OnDrop .

Substituir essa função para implementar o efeito da direita de um botão direito do mouse e para soltar.A o arrastar e soltar o botão direito do mouse exibem normalmente um menu das opções quando o botão direito do mouse é liberado.

Sua sobrescrita de OnDropEx deve consultar o botão direito do mouse.Você pode chamar GetKeyState ou armazenar o estado do botão direito do mouse do manipulador de OnDragEnter .

  • Se o botão direito do mouse está pressionada, a substituição deve exibir um menu pop-up que oferece suporte a efeitos de soltar pela origem da operação.

    • Examine dropList para determinar os efeitos de soltar suportados pela origem da operação.Ativar somente essas ações no menu pop-up.

    • Use SetMenuDefaultItem para definir a ação padrão baseada em dropDefault.

    • Finalmente, pegue a ação indicada pela seleção do usuário de menus pop-up.

  • Se o botão direito do mouse não estiver pressionada, a substituição deve processar esta como uma solicitação padrão da operação.Use o efeito de soltar especificado em dropDefault.Como alternativa, sua sobrescrita pode retornar o valor fictício (-1) para indicar que manipulará OnDrop esta operação de soltar.

Use pDataObject para examinar COleDataObject para o formato de dados e os dados da área de transferência ignorados no ponto especificado.

Os efeitos de soltar descrevem a ação associada a uma operação de soltar.Consulte a seguir lista de efeitos de soltar:

  • a operação deDROPEFFECT_NONE A não será permitida.

  • a operação de cópia deDROPEFFECT_COPY A seria executada.

  • a operação de movimentação de ADROPEFFECT_MOVE seria executada.

  • o link de ADROPEFFECT_LINK de dados ignorados para os dados originais deve ser estabelecida.

  • DROPEFFECT_SCROLL indica que uma operação de rolagem de arrasto é o ponto de ocorrer ou está ocorrendo no destino.

Para obter mais informações sobre como definir o comando de menu padrão, consulte SetMenuDefaultItem em Windows SDK e CMenu::GetSafeHmenu em este massa.

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

Classe de CView

Gráfico de hierarquia

CView::OnDragEnter

CView::OnDragOver

CView::OnDrop

CView::OnDragLeave

COleDropTarget::OnDropEx