O estilo WS_GROUP

Por padrão, o sistema move o foco de entrada para o próximo ou anterior controle sempre que o usuário pressiona uma tecla de direção. Enquanto o controle com o foco de entrada atual não processa essas chaves e o Controlarar Avançar ou anterior não é um Controlarar estático, o sistema continua a mover o foco de entrada através de todos os controles na caixa de diálogo como o usuário continua a pressionar as teclas de direção.

Um aplicativo pode usar o estilo WS_GROUP para modificar esse comportamento padrão. O estilo marca o início de um grupo de controles. Se um Controlarar no AAgruparar tem o foco de entrada quando o usuário começa pressionando as teclas de direção, o foco permanece no grupo. Em geral, o primeiro Controlarar em um grupo deve ter o estilo WS_GROUP e todos os outros controles no grupo devem não tem esse estilo. Todos os controles no grupo devem ser contíguos — isto é, eles devem ter sido criados consecutivamente com nenhuma controles intermediárias.

Quando o usuário pressiona uma tecla de direção, o sistema primeiro determina se o Controlarar atual tendo o foco de entrada processa as teclas de direção. O sistema envia uma mensagem WM_GETDLGCODE para o controle e se o controle retorna o valor DLGC_WANTARROWS, passa a chave para o controle. Caso contrário, o sistema usa a função GetNextDlgGroupItem para determinar o próximo controle no grupo.

GetNextDlgGroupItem procura controles na ordem (ou ordem inversa) foram criados. Se o usuário pressiona a direita ou tecla pressionada, GetNextDlgGroupItem retorna o Avançar Controlarar se faz esse controle não tem o estilo de WS_GROUP. Caso contrário, a função inverte a ordem da pesquisa e retorna o primeiro controle que tem o estilo WS_GROUP. Se o usuário pressiona a esquerda ou chave, a função retorna o Controlarar anterior a menos que o controle atual já tem o estilo WS_GROUP. Se o Controlarar atual tiver esse estilo, a função inverte a ordem da pesquisa, localiza o primeiro controle com o estilo WS_GROUP e retorna o Controlarar que precede imediatamente o controle localizado.

Uma vez que o sistema tem o Controlarar Avançar ou anterior, ele envia uma mensagem WM_GETDLGCODE para o Controlarar para determinar o tipo de controle. O sistema, em seguida, move o foco de entrada para controlar se não for um Controlarar estático. Se o Controlarar é um botão de opção automática, o sistema envia uma mensagem BM_CLICK para ele. Um aplicativo também pode usar GetNextDlgGroupItem para localizar controles em um grupo.

Geralmente, o primeiro controle no grupo combina os estilos WS_GROUP e WS_TABSTOP para que o usuário pode mover de grupo para grupo, usando a tecla tab. Se o grupo contém botões de opção, o aplicativo deve aplicar o estilo WS_TABSTOP somente para o primeiro controle no grupo. O move automaticamente sistema o estilo quando o usuário se move entre os controles no grupo. Isso garante que o foco de entrada será sempre sobre o Controlarar selecionado mais recentemente quando o usuário move para o grupo utilizando a tecla tab.

Index