Função RegisterDragDrop (ole2.h)
Registra a janela especificada como uma que pode ser o destino de uma operação de arrastar e soltar OLE e especifica a instância IDropTarget a ser usada para operações de soltar.
Sintaxe
HRESULT RegisterDragDrop(
[in] HWND hwnd,
[in] LPDROPTARGET pDropTarget
);
Parâmetros
[in] hwnd
Manipule para uma janela que pode ser um destino para uma operação de arrastar e soltar OLE.
[in] pDropTarget
Ponteiro para a interface IDropTarget no objeto que deve ser o destino de uma operação de arrastar e soltar em uma janela especificada. Essa interface é usada para comunicar informações de arrastar e soltar OLE para essa janela.
Retornar valor
Essa função retorna S_OK em caso de êxito. Outros valores possíveis incluem o seguinte.
Código de retorno | Descrição |
---|---|
|
Identificador inválido retornado no parâmetro hwnd. |
|
A janela especificada já foi registrada como um destino de soltar. |
|
Memória insuficiente para a operação. |
Comentários
Se o aplicativo puder aceitar objetos descartados durante operações de arrastar e soltar OLE, você deverá chamar a função RegisterDragDrop . Faça isso sempre que uma das janelas do aplicativo estiver disponível como um possível destino de descarte; ou seja, quando a janela aparece desobscurada na tela.
O thread de aplicativo que chama a função RegisterDragDrop deve estar bombeando mensagens, presumivelmente chamando a função GetMessage com um parâmetro nullhWnd , porque o OLE cria janelas no thread que precisam de mensagens processadas. Se esse requisito não for atendido, qualquer aplicativo que arraste um objeto sobre a janela registrada como um destino de soltar travará até que o aplicativo de destino seja fechado.
A função RegisterDragDrop registra apenas uma janela por vez, portanto, você deve chamá-la para cada janela do aplicativo capaz de aceitar objetos descartados.
À medida que o mouse passa por partes não observadas da janela de destino durante uma operação de arrastar e soltar OLE, a função DoDragDrop chama o método IDropTarget::D ragOver especificado para a janela atual. Quando uma operação de soltar realmente ocorre em uma determinada janela, a função DoDragDrop chama IDropTarget::D rop.
A função RegisterDragDrop também chama o método IUnknown::AddRef no ponteiro IDropTarget .
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 | ole2.h |
Biblioteca | Ole32.lib |
DLL | Ole32.dll |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de