Arrastar e soltar: personalizando
A implementação padrão do recurso de arrastar e soltar é suficiente para a maioria dos aplicativos. No entanto, alguns aplicativos podem exigir que esse comportamento padrão é alterado. Este artigo explica as etapas necessárias para alterar essas opções. Além disso, você pode usar esta técnica estabelecer os aplicativos que não dão suporte a documentos compostos como origens de descarte.
Se você estiver personalizando o comportamento padrão de OLE arrastar e soltar, ou tiver um aplicativo de não OLE, você deve criar um objeto de COleDataSource para conter os dados. Quando o usuário inicia uma operação de arrastar e soltar, o código deve chamar a função de DoDragDrop deste objeto em vez de outras classes que oferecem suporte a operações de arrastar e soltar.
Opcionalmente, é possível criar um objeto de COleDropSource para controlar a remoção e substituir algumas das funções dependendo do tipo de comportamento que você deseja alterar. Esse objeto de gota- origem é passada a COleDataSource::DoDragDrop para alterar o comportamento padrão dessas funções. Essas opções permitem diferentes muita flexibilidade no da suporte a operações de arrastar e soltar em seu aplicativo. Para obter mais informações sobre as fontes dados, consulte o artigo Objetos de dados e fontes de dados (OLE).
Você pode substituir as seguintes funções para personalizar operações de arrastar e soltar:
Substituição |
Para personalizar |
---|---|
OnBeginDrag |
Como arrastando é iniciado depois de chamar DoDragDrop. |
GiveFeedback |
Comentários visuais, como a aparência do cursor, para resultados diferentes de descarte. |
QueryContinueDrag |
A conclusão de uma operação de arrastar e soltar. Esta função permite verificar estados de chave de modificador durante a operação. |