Método IDropTarget::D ragEnter (oleidl.h)
Indica se uma queda pode ser aceita e, nesse caso, o efeito da queda.
Sintaxe
HRESULT DragEnter(
[in] IDataObject *pDataObj,
[in] DWORD grfKeyState,
[in] POINTL pt,
[in, out] DWORD *pdwEffect
);
Parâmetros
[in] pDataObj
Um ponteiro para a interface IDataObject no objeto de dados. Esse objeto de dados contém os dados que estão sendo transferidos na operação de arrastar e soltar. Se a queda ocorrer, esse objeto de dados será incorporado ao destino.
[in] grfKeyState
O estado atual das teclas modificadoras de teclado no teclado. Os valores possíveis podem ser uma combinação de qualquer um dos sinalizadores MK_CONTROL, MK_SHIFT, MK_ALT, MK_BUTTON, MK_LBUTTON, MK_MBUTTON e MK_RBUTTON.
[in] pt
Uma estrutura POINTL que contém as coordenadas atuais do cursor nas coordenadas da tela.
[in, out] pdwEffect
Na entrada, ponteiro para o valor do parâmetro pdwEffect da função DoDragDrop . No retorno, deve conter um dos sinalizadores DROPEFFECT , que indica qual seria o resultado da operação de remoção.
Retornar valor
Esse método retorna S_OK com êxito. Outros valores possíveis incluem o seguinte.
Código de retorno | Descrição |
---|---|
|
Ocorreu um erro inesperado. |
|
O parâmetro pdwEffect é NULL na entrada. |
|
Não havia memória suficiente disponível para esta operação. |
Comentários
Você não chama DragEnter diretamente; Em vez disso, a função DoDragDrop a chama para determinar o efeito de uma queda na primeira vez que o usuário arrasta o mouse para a janela registrada de um destino de soltar.
Para implementar o DragEnter, você deve determinar se o destino pode usar os dados no objeto de dados de origem verificando três coisas:
- O formato e o meio especificados pelo objeto de dados
- O valor de entrada de pdwEffect
- O estado das chaves modificadoras
Na entrada de IDropTarget::D ragEnter, o parâmetro pdwEffect é definido como os efeitos dados ao parâmetro pdwOkEffect da função DoDragDrop . O método IDropTarget::D ragEnter deve escolher um desses efeitos ou desabilitar a queda.
As seguintes chaves modificadoras afetam o resultado da queda.
Combinação de teclas | Comentários User-Visible | Efeito Drop |
---|---|---|
CTRL + SHIFT | = | DROPEFFECT_LINK |
CTRL | + | DROPEFFECT_COPY |
Sem chaves ou SHIFT | Nenhum | DROPEFFECT_MOVE |
No retorno, o método deve gravar o efeito , um dos sinalizadores DROPEFFECT, no parâmetro pdwEffect . DoDragDrop então usa esse parâmetro e o grava em seu parâmetro pdwEffect . Você comunica o efeito do drop-back para a origem por meio de DoDragDrop no parâmetro pdwEffect . A função DoDragDrop chama IDropSource::GiveFeedback para que o aplicativo de origem possa exibir os comentários visuais apropriados para o usuário por meio da janela de destino.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | oleidl.h |