Share via


Como usar controles de edição avançada

Esta seção contém tópicos que demonstram como criar e usar controles de edição avançada.

Nesta seção

Tópico Descrição
Como criar controles de edição avançada
Para criar um controle de edição avançada, chame a função CreateWindowEx, especificando a classe de janela de edição avançada. Para Microsoft Rich Edit 4.1 (Msftedit.dll), especifique MSFTEDIT_CLASS como a classe de janela. Para todas as versões anteriores, especifique RICHEDIT_CLASS. Para obter mais informações, consulte Versões do Rich Edit.
Os controles de edição avançada oferecem suporte à maioria dos estilos de janela usados com controles de edição, bem como a estilos adicionais. Você deve especificar o estilo de janela ES_MULTILINE se quiser permitir mais de uma linha de texto no controle. Para obter mais informações, consulte Estilos de controle de edição avançada.
Como formatar texto em controles de edição avançada
Um aplicativo pode enviar mensagens para um controle de edição avançado para formatar caracteres e parágrafos e recuperar informações de formatação. Os atributos de formatação de parágrafo incluem alinhamento, tabulações, recuos, numeração e tabelas simples. Para caracteres, você pode especificar nome, tamanho, cor e efeitos da fonte, como negrito, itálico e protegido.
Como interagir com a seleção atual
O usuário pode selecionar texto em um controle de edição avançada usando o mouse ou o teclado. A seleção atual é o intervalo de caracteres selecionados ou a posição do ponto de inserção se nenhum caractere for selecionado. Um aplicativo pode obter informações sobre a seleção atual, defini-la, determinar quando ela é alterada e mostrar ou ocultar o realce da seleção.
Como usar operações de rich edit text
Um aplicativo pode enviar mensagens para recuperar ou localizar texto em um controle de edição avançada. Você pode recuperar o texto selecionado ou um intervalo de texto especificado.
Como usar informações de quebra de linha e Word
Um controle de edição avançado chama uma função chamada procedimento de quebra de palavras para localizar quebras entre palavras e determinar onde ele pode quebrar linhas. O controle usa essas informações ao executar operações de quebra automática de texto e ao processar combinações de teclas CTRL + SETA PARA A ESQUERDA e CTRL + SETA PARA A DIREITA. Um aplicativo pode enviar mensagens para um controle de edição avançado para substituir o procedimento padrão de quebra de palavras, recuperar informações de quebra de palavras e determinar em qual linha um determinado caractere se enquadra.
Como usar operações avançadas da área de transferência de edição
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.
Como usar fluxos
Você pode usar fluxos para transferir dados para dentro ou para fora de um controle de edição avançado. Um fluxo é definido por uma estrutura EDITSTREAM, que especifica um buffer e uma função de retorno de chamada definida pelo aplicativo.
Como redimensionar automaticamente controles de edição avançada
Um aplicativo pode redimensionar um controle de edição avançado conforme necessário para que ele seja sempre do mesmo tamanho que seu conteúdo. Um controle de edição avançado oferece suporte a essa chamada funcionalidade sem fundo, enviando à janela pai um código de notificação EN_REQUESTRESIZE sempre que o tamanho do conteúdo do controle for alterado.
Como usar códigos de notificação de controle Rich Edit
A janela pai de um controle de edição avançada pode processar códigos de notificação para monitorar eventos que afetam o controle. Os controles de edição avançada oferecem suporte a todos os códigos de notificação usados com controles de edição, bem como vários adicionais.
Como usar a vinculação de fonte em controles de edição avançada
Microsoft Rich Edit 3.0 atribui um conjunto de caracteres para caracteres de texto sem formatação, dependendo de seu contexto. Alguns exemplos são:
  • Caracteres gregos são atribuídos GREEK_CHARSET.
  • Os símbolos Hangul são atribuídos HANGUL_CHARSET.
  • Os caracteres chineses são atribuídos SHIFTJIS_CHARSET se caracteres kana forem encontrados nas proximidades, ou GB2312_CHARSET se nenhum kana for encontrado nas proximidades.
  • Caracteres ANSI não neutros são atribuídos ANSI_CHARSET em qualquer caso.
Como usar OLE em controles de edição avançada
Esta seção contém informações sobre como usar a vinculação e incorporação de objetos (OLE) em controles de edição avançada.
Como imprimir o conteúdo de controles de edição avançada
Esta seção contém informações sobre como imprimir o conteúdo de controles rich edit.