Classe CEdit
Fornece a funcionalidade de um controle de edição do Windows.
class CEdit : public CWnd
Comentários
Um controle de edição é uma janela filho retangular na qual o usuário pode digitar texto.
Você pode criar um controle de edição de um modelo de caixa de diálogo ou diretamente em seu código.Em ambos os casos, primeiro chame o construtor CEdit para construir o CEdit objeto e, em seguida, ligue para o Criar função de membro para criar o Windows controle de edição e anexá-lo à CEdit objeto.
Construção pode ser um processo em uma etapa em uma classe derivada de CEdit. Escrever um construtor para a classe derivada e chamar Criar de dentro do construtor.
CEdit herda a funcionalidade significativa de CWnd. Para conjunto e recuperar texto de um CEdit objeto, use o CWnd funções de membro SetWindowText and GetWindowText, que conjunto ou obter todo o Sumário de um controle de edição, mesmo se for um controle de várias linhas.Linhas de texto em um controle de várias linhas são separadas por seqüências de caractere '\r\n'.Além disso, se um controle de edição é combinado, obter e conjunto parte de texto do controle chamando o CEdit funções de membro GetLine, SetSel, GetSel, and ReplaceSel.
Se você quiser controlar mensagens de notificação do Windows enviadas por um controle de edição para seu pai (geralmente uma classe derivada de CDialog), adicionar uma função de membro de manipulador de mensagens e entrada de MAP da mensagem para a classe pai para cada mensagem.
Cada entrada de MAP da mensagem possui o seguinte formato:
ON_Notification( id, memberFxn )
em que id Especifica a ID de janela filho do controle de edição, enviando a notificação, e memberFxn é o nome da função de membro pai que você tenha escrito para manipular a notificação.
Protótipo de função do pai é o seguinte:
afx_msg void memberFxn de ( );
Veja a seguir uma lista de entradas potenciais do MAP da mensagem e uma descrição dos casos em que eles seriam enviados para o pai:
ON_EN_CHANGE O usuário executou uma ação que pode ter alterado o texto em um controle de edição.Ao contrário de EN_UPDATEmensagem de notificação de , essa mensagem de notificação será enviada após a exibição de atualizações do Windows.
ON_EN_ERRSPACE O controle de edição não é possível alocar memória suficiente para atender a uma solicitação específica.
ON_EN_HSCROLL O usuário clica em BAR de rolar horizontal de um controle de edição.A janela pai é notificada antes que a tela seja atualizada.
ON_EN_KILLFOCUS O controle de edição perde o foco de entrada.
ON_EN_MAXTEXT A inserção corrente excedeu o número especificado de caracteres para o controle de edição e foi truncada.Também é enviada quando um controle de edição não tem o ES_AUTOHSCROLL estilo e o número de caracteres a serem inseridos excederia a largura do controle de edição.Também é enviada quando um controle de edição não tem o ES_AUTOVSCROLL estilo e o número total de linhas resultantes da inserção de texto excede a altura do controle de edição.
ON_EN_SETFOCUS Enviada quando um controle de edição recebe o foco de entrada.
ON_EN_UPDATE O controle de edição está prestes a exibir o texto alterado.Enviado após o controle tiver formatado o texto mas antes ele filtra o texto para que o dimensionar da janela pode ser alterado, se necessário.
ON_EN_VSCROLL O usuário clica em BAR de rolar vertical de um controle de edição.A janela pai é notificada antes que a tela seja atualizada.
Se você criar um CEdit objeto dentro de uma caixa de diálogo, o CEdit objeto é destruído automaticamente quando o usuário fecha a caixa de diálogo.
Se você criar um CEdit objeto a partir de um recurso de caixa de diálogo usando o editor da caixa de diálogo, o CEdit objeto é destruído automaticamente quando o usuário fecha a caixa de diálogo.
Se você criar um CEdit objeto dentro de uma janela, você talvez também precise destruí-lo. Se você criar o CEdit objeto na pilha, ele será destruído automaticamente. Se você criar o CEdit objeto no heap usando o novo função, você deve telefonar Excluir no objeto para destruí-lo quando o usuário encerra o Windows controle de edição.Se você alocar toda a memória no CEdit objeto, substituir o CEdit Destructor para descartar as alocações.
Para modificar determinados estilos em um controle de edição (por exemplo, ES_READONLY) Você deve enviar mensagens específicas para o controle em vez de usar ModifyStyle.See edição estilos de controle in the Windows SDK.
Para obter mais informações sobre o CEdit, consulte:
Artigo da Base de dados de Conhecimento Q259949: INFO: Não é adequado com CEdit ou controles CRichEditCtrl SetCaretPos()
Requisitos
Cabeçalho: afxwin.h
Consulte também
Tarefas
Exemplo CALCDRIV: Demonstra um aplicativo de cliente de automação
Exemplo de CMNCTRL2: Demonstra a classes do MFC de Controlarar ComComumComum, parte 2