Como adicionar, editar ou excluir controles (C++)
Usando o Editor de Caixa de Diálogo, você pode adicionar, redimensionar, editar e excluir controles em caixas de diálogo. Você também pode editar as propriedades de um controle, como sua ID ou se ele está inicialmente visível em tempo de execução.
A guia Editor de Caixa de Diálogo é exibida na janela Caixa de Ferramentas quando você está trabalhando no Editor de Diálogo. Você também pode personalizar a janela Caixa de Ferramentas para facilitar o uso. Para mais informações, confira Como usar a caixa de ferramentas e Mostrar ou ocultar a janela caixa de ferramentas.
Dica
Ao usar o Editor de Diálogo, em muitos casos, você pode selecionar o botão direito do mouse para exibir um menu de atalho de comandos usados com frequência.
adicionar controles
Para adicionar um controle
Verifique se a janela com guias da caixa de diálogo é o documento atual no quadro do editor. Se uma caixa de diálogo não for o documento atual, você não verá a guia Editor de Diálogo na Caixa de Ferramentas.
Na guia Editor de Diálogo da janela Caixa de Ferramentas, selecione o controle desejado e:
Selecione a caixa de diálogo no local em que você deseja colocar o controle, então o controle será exibido no local selecionado.
Arraste e solte o controle da janela Caixa de Ferramentas para o local na caixa de diálogo. Então você pode mover o controle ou alterar seu tamanho e forma.
Clique duas vezes no controle na janela Caixa de Ferramentas e ele aparecerá na caixa de diálogo. Reposicione o controle para o local que você preferir.
Para adicionar vários controles
Ao manter a tecla Ctrl pressionada, selecione um controle na janela Caixa de Ferramentas.
Solte a tecla Ctrl e selecione a caixa de diálogo quantas vezes quiser para adicionar o controle específico.
Pressione Esc para parar de colocar controles.
Para dimensionar um controle enquanto você o adiciona
Selecione um controle na janela Caixa de Ferramentas.
Coloque o cursor que aparece como retícula no local em que você deseja que o canto superior esquerdo do novo controle esteja em sua caixa de diálogo.
Selecione e mantenha pressionado o botão do mouse para ancorar o canto superior esquerdo do controle na caixa de diálogo. Então arraste o cursor para a direita e para baixo até que o controle esteja do tamanho desejado.
Observação
Você pode ancorar qualquer um dos quatro cantos do controle que está desenhando. Este procedimento usou o canto superior esquerdo como exemplo.
Solte o botão do mouse. O controle se instala na caixa de diálogo no tamanho especificado.
Dica
Você pode redimensionar o controle depois de deixá-lo cair na caixa de diálogo movendo as alças de dimensionamento na borda do controle. Para mais informações, confira Como dimensionar controles individuais.
Para adicionar um controle personalizado
Você pode adicionar controles personalizados à caixa de diálogo. Selecione o ícone Controle Personalizado na Caixa de Ferramentas e arraste-o para a caixa de diálogo. Para adicionar um controle Syslink
, adicione um controle personalizado e altere a propriedade Class do controle para Syslink
. Essa ação fará com que as propriedades atualizem e mostrem as propriedades do controle Syslink
. Para informações sobre a classe wrapper MFC, confira CLinkCtrl.
Controles de Edição
Para editar as propriedades de um controle ou controles
Na caixa de diálogo, selecione o controle que você quer modificar.
Observação
Se você selecionar vários controles, somente as propriedades comuns aos controles selecionados poderão ser editadas.
Na janela Propriedades, altere as propriedades de seu controle.
Observação
Quando você define a propriedade Bitmap para um botão, um botão de opção ou um controle de caixa de seleção igual a True, o estilo BS_BITMAP é implementado para o controle. Para obter mais informações, consulte Estilos de botão. Para um exemplo de associação de um bitmap a um controle, confira CButton::SetBitmap. Os bitmaps não aparecerão no controle enquanto você estiver no Editor de Caixa de Diálogo.
Para desfazer alterações às propriedades de um controle
Verifique se o controle tem foco no Editor de Caixa de Diálogo.
Vá para o menu Editar>Desfazer. Se o foco não estiver no controle, o comando Desfazer não estará disponível.
Para definir uma variável de membro para um controle de caixa de diálogo (não de botão)
Observação
Esse processo se aplica somente a controles de caixa de diálogo dentro de um projeto MFC. Os projetos da ATL devem usar a caixa de diálogo Novas Mensagens do Windows e Manipuladores de Eventos. Para mais informações, confira Tipos de mensagem associados a objetos de interface do usuário, Como editar um manipulador de mensagens e Como definir um manipulador de mensagens para uma mensagem refletida.
No Editor de Diálogo, selecione um controle.
Ao pressionar a tecla Ctrl, clique duas vezes no controle da caixa de diálogo.
O assistente Adicionar Variável de Membro é exibido.
Digite as informações apropriadas no assistente Adicionar Variável de Membro. Para mais informações, confira Troca de dados de diálogo.
Selecione OK para voltar ao Editor de Diálogo.
Dica
Para pular de qualquer controle de caixa de diálogo para seu manipulador existente, clique duas vezes no controle.
Você também pode usar a guia Variáveis de Membro no Assistente de Classe MFC para adicionar variáveis de membro a uma classe especificada e exibir variáveis de membro já definidas.
Excluir controles
Na caixa de diálogo, selecione o controle e pressione a tecla Excluir ou vá para o menu Editar>Excluir.
Outros problemas
Solução de problemas
Depois de adicionar um controle comum ou um controle de edição avançada a uma caixa de diálogo, ele não será exibido quando você testar a caixa de diálogo. Ou a caixa de diálogo em si não aparecerá. Por exemplo:
Crie um projeto Win32, modificando as configurações do aplicativo para que você crie um aplicativo do Windows (não um aplicativo de console).
No Modo de Exibição de Recursos, clique duas vezes no arquivo .rc.
Na opção de caixa de diálogo, clique duas vezes na caixa Sobre.
Adicione um Controle de Endereço IP à caixa de diálogo.
Salve e escolha Recompilar tudo.
Executar o programa.
No menu Ajuda da caixa de diálogo, selecione o comando Sobre e observe que nenhuma caixa de diálogo é exibida.
Atualmente, o Editor de Diálogo não adiciona automaticamente código ao seu projeto quando você arrasta e solta os controles comuns a seguir ou os controles avançados de edição em uma caixa de diálogo. O Visual Studio também não fornece um erro ou aviso quando esse problema ocorre. Para corrigir, adicione o código para o controle manualmente.
Controle de animação
Controle Personalizado
Seletor de data e hora
Caixa de combinação estendida
Tecla de atalho
Controle de endereço IP
Controle de lista
Month Calendar
Controle de progresso
Controle de Rich Edit 2.0
Controle de edição avançada
Controle deslizante
Controle de giro
Controle guia
Controle de árvore
Para usar controles comuns em uma caixa de diálogo, você precisa chamar InitCommonControlsEx ou AFXInitCommonControls
antes de criar a caixa de diálogo.
Para usar controles RichEdit, chame LoadLibrary
. Para mais informações, confira Sobre controles de edição avançada no SDK do Windows e Visão geral do controle de edição avançada.
Observação
Para usar um controle RichEdit com o MFC, primeiro chame AfxInitRichEdit2 para carregar o Controle RichEdit 2.0 (RICHED20.DLL) ou AfxInitRichEdit para carregar o controle RichEdit 1.0 mais antigo (RICHED32.DLL).
Você pode usar a classe CRichEditCtrl atual com o controle RichEdit 1.0 mais antigo, mas CRichEditCtrl
só foi projetado para dar suporte ao controle RichEdit 2.0. Como RichEdit 1.0 e RichEdit 2.0 são semelhantes, a maioria dos métodos funcionará. No entanto, há algumas diferenças entre os controles 1.0 e 2.0, portanto, alguns métodos podem funcionar incorretamente ou não funcionar.
Inserir controles ActiveX
O Visual Studio permite que você insira controles ActiveX em sua caixa de diálogo. Para mais informações, confira Controles ActiveX MFC e Contêineres de controle ActiveX.
A caixa de diálogo Inserir Controle ActiveX permite inserir controles ActiveX em sua caixa de diálogo ao usar o Editor de Diálogo. Este diálogo contém as seguintes propriedades:
Propriedade | Descrição |
---|---|
Controle ActiveX | Exibe uma lista de controles ActiveX. A inserção de um controle dessa caixa de diálogo não gera uma classe wrapper. Se você precisar de uma classe wrapper, use o Modo de Exibição de Classe para criar uma. Confira Como adicionar uma classe. Se um controle ActiveX não aparecer nesta caixa de diálogo, tente instalar o controle de acordo com as instruções do fornecedor. |
Caminho | Exibe o arquivo no qual o controle ActiveX é encontrado. |
Cuidado
Pode não ser legal distribuir todos os controles ActiveX em seu sistema. Confira o contrato de licença do software que instalou os controles ou entre em contato com a empresa de software.
Para adicionar um controle ActiveX
Abra uma caixa de diálogo no Editor de Diálogo.
Clique com o botão direito do mouse em qualquer lugar do corpo da caixa de diálogo e selecione Inserir Controle ActiveX.
A caixa de diálogo Inserir Controle ActiveX é exibida, mostrando todos os controles ActiveX em seu sistema. Na parte inferior da caixa de diálogo, o caminho para o arquivo de Controle ActiveX é exibido.
Selecione o controle que você deseja adicionar à caixa de diálogo e escolha OK.
O controle aparece na caixa de diálogo, em que você pode editá-lo ou criar manipuladores para ele como faria com qualquer outro controle.
Dica
Você pode usar o menu de atalho no Editor de Diálogo para adicionar rapidamente controles ActiveX registrados a uma caixa de diálogo ou tentar adicionar controles ActiveX à janela Caixa de Ferramentas para facilitar o acesso.
Para editar propriedades de um controle ActiveX
Os controles ActiveX de fornecedores independentes podem ter propriedades e características e próprias. Essas propriedades são exibidas na janela Propriedades. Todas as páginas de propriedade criadas pelos gravadores do controle ActiveX são exibidas na caixa de diálogo Páginas de Propriedades. (Para exibir a Página de Propriedades de um controle ActiveX específico, selecione o botão Página de Propriedades na janela Propriedades).
Selecione o controle ActiveX e vá para o menu Exibir>Página de Propriedades para exibir as propriedades. Faça alterações conforme necessário na página de propriedades.
Várias guias são exibidas na página de propriedades de um controle ActiveX, dependendo das folhas de propriedades que vêm como parte do controle ActiveX.
Observação
Este procedimento é para o uso da página de propriedades para editar controles ActiveX. Você também pode procurar e editar propriedades ActiveX na nova janela Propriedades.
Requisitos
Win32
Confira também
Gerenciar Controles da Caixa de Diálogo
Como: Utilizar controles de layout
Como: Definir Acesso e Valores de Controle