Compartilhar via


Qual é a diferença entre DataObject e a Área de Transferência?

O DataObject e a Área de Transferência fornecem um meio de mover dados de um lugar para outro. Como desenvolvedor de aplicativos, há vários pontos importantes a serem lembrados quando você usa um DataObject ou a área de transferência:

  • Você pode armazenar mais de um pedaço de dados por vez em um DataObject ou na Área de Transferência, desde que cada pedaço de dados tenha um formato de dados diferente. Se você armazenar dados com um formato que já está em uso, os novos dados serão salvos e os dados antigos serão descartados.

  • A Área de Transferência dá suporte a formatos de imagem e formatos de texto. Um DataObject atualmente dá suporte apenas a formatos de texto.

  • Um DataObject só existe enquanto seu aplicativo está em execução; a área de transferência existe desde que o sistema operacional esteja em execução. Isso significa que você pode colocar dados na Área de Transferência e fechar um aplicativo sem perder os dados. O mesmo não é verdadeiro com o DataObject. Se você fechar o aplicativo que coloca dados em um DataObject, perderá os dados.

  • Um DataObject é um objeto OLE padrão, enquanto a Área de Transferência não é. Isso significa que a Área de Transferência pode dar suporte a operações de movimentação padrão (copiar, cortar e colar), mas não operações de arrastar e soltar. Você deve usar o DataObject se quiser que seu aplicativo dê suporte a operações de arrastar e soltar.

Dica

Você pode definir seus próprios nomes de formato de dados ao usar o método SetText para mover dados para a Área de Transferência ou um DataObject. Isso pode ajudar a distinguir entre o texto que o aplicativo move e o texto que o usuário move.

Confira também

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.