Controles de caixa de diálogo

O modelo especifica a posição, largura, altura, estilo, identificador e classe de janela para cada Controlarar na caixa de diálogo. O sistema cria cada controle, passando esses dados para o CreateWindowEx função. Controles são criados na ordem em que eles são dadas no modelo. O modelo deve especificar o número apropriado, o tipo e a ordem dos controles para garantir que o usuário pode inserir a entrada necessária para concluir o comando associado com a caixa de diálogo.

Para cada controle, o modelo especifica valores de estilo que definem a aparência e o funcionamento do controle. Cada Controlarar é uma janela filho e, portanto, deve ter o estilo estilo. Para garantir que o Controlarar é visível quando a caixa de diálogo é exibida, cada Controlarar também deve ter o estilo WS_VISIBLE. Outros estilos de janela comumente usadas são WS_BORDER para controles que têm bordas opcionais, WS_DISABLED para controles que devem ser desativados quando a caixa de diálogo é criada inicialmente, e WS_TABSTOP e WS_GROUP para controles que podem ser acessados usando o teclado. Os estilos WS_TABSTOP e WS_GROUP são usados em conjunto com a interface de teclado de caixa de diálogo descrita neste tópico.

O modelo também pode especificar estilos de Controlarar específicos de classe de janela do Controlarar. Por exemplo, um modelo que especifica um Controlarar de botão deve dar um estilo de Controlarar de botão como BS_PUSHBUTTON ou BS_CHECKBOX. O sistema passa os estilos de Controlarar de para o procedimento de janela de controle por meio de mensagem WM_CREATE , permitindo que o processo de adaptar a aparência e o funcionamento do controle.

O sistema converte as coordenadas de posição e medidas de largura e altura das unidades de base de diálogo para pixels, antes de passá-los para CreateWindowEx. Quando o sistema cria um controle, ele especifica a caixa de diálogo como a janela pai. Isso significa que o sistema sempre interpreta as coordenadas de posição do Controlarar como cliente coordenadas, relativo para o canto superior esquerdo da área de cliente da caixa de diálogo.

O modelo especifica a classe janela para cada controle. Uma caixa de diálogo típicas contém controles pertencentes às classes de janela de controle predefinidos, tais como o botão e editar classes de janela do Controlarar. Neste caso, o modelo especifica as classes de janela, fornecendo os valores predefinidos átomo correspondentes para as classes. Quando uma caixa de diálogo contém um Controlarar que pertencem a uma classe de janela do Controlarar Personalizar, o modelo dá o nome da classe janela registrado ou o valor de átomo atualmente associado com o nome.

Cada controle em uma caixa de diálogo deve ter um identificador exclusivo para o distinguir de outros controles. Controles enviam informações para o procedimento caixa de diálogo por meio de WM_COMMAND mensagens, portanto, os identificadores de Controlarar são essenciais para o processo determinar qual Controlarar enviou uma determinada mensagem. A única exceção a essa regra são controle de identificadores para controles estáticos. Controles estáticos não requerem identificadores exclusivos porque eles enviarem nenhuma mensagem WM_COMMAND.

Para permitir que o usuário para fechar a caixa de diálogo, o modelo deve especificar pelo menos um botão de ação e dar-lhe o identificador de Controlarar IDCANCEL. Para permitir que o usuário escolha entre a concluir ou cancelar o comando associado com a caixa de diálogo, o modelo deve especificar dois botões, rotulado OK e cancelar, com identificadores de Controlarar de IDOK e IDCANCEL, respectivamente.

Um modelo também especifica dados opcionais de texto e criação de um Controlarar. O texto normalmente fornece rótulos para controles de botão ou especifica o conteúdo inicial de um Controlarar de texto estático. Os dados de criação serão um ou mais bytes de dados que o sistema passa para o procedimento de janela do Controlarar ao criar o Controlarar. Dados de criação são útil para controles que exigem mais informações sobre o seu conteúdo inicial ou estilo do que é dado por outros dados. Por exemplo, um aplicativo pode usar dados de criação para definir a configuração inicial e o intervalo para um Controlarar de barra de rolagem.