Medições de caixa de diálogo

Cada modelo de caixa de diálogo contém as medições que especificam a posição, largura e altura da caixa de diálogo e os controles que ele contém. Essas medições são dispositivo independente, portanto, um aplicativo pode usar um único modelo para criar a mesma caixa de diálogo para todos os tipos de dispositivos de exibição. Isso garante que uma caixa de diálogo terá as mesmas proporções e aparência em todas as telas apesar de resoluções diferentes e proporções entre telas.

As medições em um modelo de caixa de diálogo são dadas em unidades modelo diálogo. Para converter medidas de diálogo modelo unidades às unidades tela (pixels), use o MapDialogRect função, que leva em consideração a fonte usada pela caixa de diálogo e converte corretamente um retângulo de diálogo modelo unidades em pixels. Para caixas de diálogo que usam a fonte do sistema, você pode usar a GetDialogBaseUnits função para realizar os cálculos de conversão sozinho, embora usando o MapDialogRect é mais simples.

O modelo deve especificar as coordenadas do canto superior esquerdo da caixa de diálogo iniciais. Geralmente, as coordenadas são relativo para o canto superior esquerdo da área cliente da janela de proprietário. Quando o modelo especifica o estilo DS_ABSALIGN ou a caixa de diálogo não possui nenhum proprietário, a posição é relativo para o canto superior esquerdo da tela. O sistema define esta posição inicial ao criar a caixa de diálogo, mas permite que um aplicativo para ajustar a posição antes de exibir a caixa de diálogo. Por exemplo, um aplicativo pode recuperar as dimensões da janela do proprietário, calcular a nova posição que centraliza a caixa de diálogo na janela do proprietário e, em seguida, definir a posição usando o SetWindowPos função.

O modelo deve especificar uma largura de caixa de diálogo e uma altura que não ultrapasse a largura e altura da tela e garante que todos os controles estão dentro de área cliente da caixa de diálogo. Embora o sistema permita que uma caixa de diálogo para qualquer tamanho, criar um que é muito pequeno ou muito grande pode impedir que o usuário fornecer entrada, invalidando a finalidade da caixa de diálogo. Muitos aplicativos usam mais de uma caixa de diálogo quando há um grande número de controles. Em tais casos, a caixa de diálogo inicial normalmente contém um ou mais botões que o usuário pode escolher para exibir a próxima caixa de diálogo.

Index