COleDropTarget::OnDragOver
Chamado pela estrutura quando o cursor é arrastado sobre a janela.
virtual DROPEFFECT OnDragOver(
CWnd* pWnd,
COleDataObject* pDataObject,
DWORD dwKeyState,
CPoint point
);
Parâmetros
pWnd
Aponta para a janela que o cursor está sobre.pDataObject
Aponta para um objeto de dados que contém os dados a serem descartados.dwKeyState
Contém o estado das teclas modificadoras.Esta é uma combinação de qualquer número de seguinte: MK_CONTROL, MK_SHIFT, MK_ALT, MK_LBUTTON, MK_MBUTTON, e MK_RBUTTON.point
Contém o local atual do cursor em coordenadas do cliente.
Valor de retorno
O efeito que resultaria se uma operação foi tentada no local especificado por point.Pode ser um ou mais dos seguintes:
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.
Comentários
Essa função deve ser substituído para permitir que operações de soltar ocorram na janela.A implementação padrão de este chamadas de função CView::OnDragOver, que retorna DROPEFFECT_NONE por padrão.Porque essa função é chamada com freqüência durante uma operação de arrastar-e-soltar, deve ser otimizada tanto quanto possível.
Para obter mais informações, consulte IDropTarget::DragOver em Windows SDK.
Exemplo
DROPEFFECT COleContainerView::OnDragOver(COleDataObject* pDataObject,
DWORD dwKeyState, CPoint point)
{
UNREFERENCED_PARAMETER(pDataObject);
UNREFERENCED_PARAMETER(point);
DROPEFFECT de = DROPEFFECT_NONE;
//Determine the type of operation
if((dwKeyState & MK_SHIFT) && (dwKeyState & MK_CONTROL))
de = DROPEFFECT_LINK;
else if(dwKeyState & MK_CONTROL)
de = DROPEFFECT_COPY;
else if(dwKeyState & MK_SHIFT)
de = DROPEFFECT_MOVE;
return de;
}
Requisitos
Cabeçalho: afxole.h