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.

O que você precisa saber

Tecnologias

Pré-requisitos

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

Instruções

Criar um controle de edição avançado

A função de exemplo a seguir cria um controle rich edit e o inicializa com algum texto.

HWND CreateRichEdit(HWND hwndOwner,        // Dialog box handle.
                    int x, int y,          // Location.
                    int width, int height, // Dimensions.
                    HINSTANCE hinst)       // Application or DLL instance.
{
    LoadLibrary(TEXT("Msftedit.dll"));
    
    HWND hwndEdit= CreateWindowEx(0, MSFTEDIT_CLASS, TEXT("Type here"),
        ES_MULTILINE | WS_VISIBLE | WS_CHILD | WS_BORDER | WS_TABSTOP, 
        x, y, width, height, 
        hwndOwner, NULL, hinst, NULL);
        
    return hwndEdit;
}

No Microsoft Visual Studio 2005 e posterior, é possível adicionar um controle de edição avançada em um modelo de diálogo arrastando o controle da caixa de ferramentas. No entanto, fazer isso no editor de diálogo não garante que a biblioteca necessária será carregada antes que o controle seja criado. É necessário chamar a função LoadLibrary para carregar Riched32.dll, Riched20.dll ou Msftedit.dll antes que a caixa de diálogo seja criada.

Comentários

Para usar estilos visuais com esses controles, um aplicativo deve incluir um manifesto e deve chamar a função InitCommonControls no início do programa. Para obter informações sobre estilos visuais, consulte Estilos visuais. Para obter informações sobre manifestos, consulte Habilitando estilos visuais.

Usando controles de edição avançada

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