Como usar operações de área de transferência de edição avançada

Um aplicativo pode colar o conteúdo da área de transferência em um controle de edição avançado usando o melhor formato de área de transferência disponível ou um formato específico da área de transferência. Você também pode determinar se um controle de edição avançado é capaz de colar um formato de área de transferência.

O que você precisa saber

Tecnologias

Pré-requisitos

  • C/C++
  • Programação da interface do usuário do Windows

Instruções

Usar uma operação de área de transferência de edição avançada

Assim como em um controle de edição, você pode copiar ou cortar o conteúdo da seleção atual usando a mensagem WM_COPY ou WM_CUT. Da mesma forma, você pode colar o conteúdo da área de transferência em um controle de edição avançada usando a mensagem WM_PASTE. O controle cola o primeiro formato disponível que reconhece, que presumivelmente é o formato mais descritivo.

Para colar um formato específico da área de transferência, você pode usar a mensagem EM_PASTESPECIAL. Essa mensagem é útil para aplicativos com um comando Colar especial que permite ao usuário selecionar o formato da área de transferência. Você pode usar a mensagem EM_CANPASTE para determinar se um determinado formato é reconhecido pelo controle.

Você também pode usar a mensagem EM_CANPASTE para determinar se qualquer formato de área de transferência disponível é reconhecido por um controle de edição avançada. Essa mensagem é útil ao processar a mensagem WM_INITMENUPOPUP. Um aplicativo pode habilitar ou cinza seu comando Colar , dependendo se o controle pode colar qualquer formato disponível.

Os controles de edição avançada registram dois formatos de área de transferência:

  • Formato Rich Text
  • Formato Rich Text sem objetos
  • Rich Edit de texto e objetos

Um aplicativo pode registrar esses formatos usando a função RegisterClipboardFormat , especificando os valores CF_RTF, CF_RTFNOOBJS e CF_RETEXTOBJ.

Usando controles de edição avançada

Demonstração de controles comuns do Windows (CppWindowsCommonControls)