Área de transferência: Copiando e colando dados

Este tópico descreve o trabalho mínimo necessário para implementar copiando e colando da área de transferência em seu aplicativo OLE.É recomendável que você leia o Objetos de dados e fontes de dados (OLE) tópicos antes de prosseguir.

Antes de implementar o copiar ou colar, primeiro você deve fornecer funções para lidar com as opções de copiar, recortar e colar no menu edição.

Copiar ou recortar dados

Para copiar dados para a área de transferência

  1. Determine se os dados a serem copiados são dados nativo ou é um item incorporado ou vinculado.

    • Se os dados incorporados ou vinculados, obter um ponteiro para o COleClientItem objeto que foi selecionado.

    • Se os dados são nativo e o aplicativo é um servidor, criar um novo objeto derivado de COleServerItem que contém os dados selecionados. Caso contrário, criar um COleDataSource objeto de dados.

  2. telefonar CopyToClipboard função de membro.

  3. Se o usuário escolher uma operação recortar em vez de uma operação de copiar, exclua os dados selecionados do seu aplicativo.

Para ver um exemplo dessa sequência, consulte o OnEditCut and OnEditCopy funções no MFC OLE amostra programas OCLIENT and HIERSVR.Observe que essas Exemplos mantenham um ponteiro para os dados selecionados no momento, portanto, etapa 1 já está concluída.

Colando dados

Colando dados é mais complicado do que copiá-lo porque você precisa para escolher o formato a ser usado em colando os dados em seu aplicativo.

Para colar dados da área de transferência

  1. Na sua classe de modo de exibição, implementar OnEditPaste para lidar com os usuários escolhendo a opção Colar no menu edição.

  2. No OnEditPaste funcionar, crie um COleDataObject objeto e telefonar seu AttachClipboard função de membro para vincular esse objeto de dados na área de transferência.

  3. De telefonarCOleDataObject::IsDataAvailable Para verificar se um determinado formato está disponível.

    Como alternativa, você pode usar COleDataObject::BeginEnumFormats para procurar por outros formatos até encontrar uma mais adequado para seu aplicativo.

  4. Realize a colar do formato.

Para obter um exemplo de como isso funciona, consulte a implementação do OnEditPaste modo de exibição de classes definidas no MFC OLE amostra programas membro funçõesOCLIENT and HIERSVR.

Dica:

O principal benefício de separar a operação de colar em sua própria função é que o mesmo código de colar pode ser usado quando for solto dados em seu aplicativo durante uma operação de do tipo arrastar e soltar.sistema autônomo em OCLIENT e HIERSVR, seu OnDrop função também pode telefonar DoPasteItem, reutilizando o código escrito para implementar operações de colar.

Para lidar com a opção Colar especial no menu edição, consulte o tópico Caixas de diálogo no OLE.

O que você deseja saber mais sobre?

Consulte também

Referência

Área de transferência: Usando o mecanismo de área de transferência OLE