Estrutura DLGTEMPLATE (winuser.h)
Define as dimensões e o estilo de uma caixa de diálogo. Essa estrutura, sempre a primeira em um modelo padrão para uma caixa de diálogo, também especifica o número de controles na caixa de diálogo e, portanto, especifica o número de estruturas DLGITEMTEMPLATE subsequentes no modelo.
Sintaxe
typedef struct {
DWORD style;
DWORD dwExtendedStyle;
WORD cdit;
short x;
short y;
short cx;
short cy;
} DLGTEMPLATE;
Membros
style
Tipo: DWORD
O estilo da caixa de diálogo. Esse membro pode ser uma combinação de valores de estilo de janela (como WS_CAPTION e WS_SYSMENU) e valores de estilo de caixa de diálogo (como DS_CENTER).
Se o membro de estilo incluir o estilo DS_SETFONT , o cabeçalho do modelo da caixa de diálogo conterá dados adicionais especificando a fonte a ser usada para texto na área do cliente e controles da caixa de diálogo. Os dados da fonte começam no limite do WORD que segue a matriz de título. Os dados da fonte especificam um valor de tamanho de ponto de 16 bits e uma cadeia de caracteres de nome de fonte Unicode. Se possível, o sistema cria uma fonte de acordo com os valores especificados. Em seguida, o sistema envia uma mensagem WM_SETFONT para a caixa de diálogo e para cada controle para fornecer um identificador para a fonte. Se DS_SETFONT não for especificado, o modelo da caixa de diálogo não incluirá os dados da fonte.
Não há suporte para o estilo DS_SHELLFONT no cabeçalho DLGTEMPLATE .
dwExtendedStyle
Tipo: DWORD
Os estilos estendidos de uma janela. Esse membro não é usado para criar caixas de diálogo, mas aplicativos que usam modelos de caixa de diálogo podem usá-lo para criar outros tipos de janelas. Para obter uma lista de valores, consulte Estilos de janela estendidos.
cdit
Tipo: WORD
O número de itens na caixa de diálogo.
x
Tipo: short
A coordenada x, em unidades de caixa de diálogo, do canto superior esquerdo da caixa de diálogo.
y
Tipo: short
A coordenada y, em unidades de caixa de diálogo, do canto superior esquerdo da caixa de diálogo.
cx
Tipo: short
A largura, em unidades da caixa de diálogo, da caixa de diálogo.
cy
Tipo: short
A altura, em unidades da caixa de diálogo, da caixa de diálogo.
Comentários
Em um modelo padrão para uma caixa de diálogo, a estrutura DLGTEMPLATE é sempre seguida imediatamente por três matrizes de comprimento variável que especificam o menu, a classe e o título da caixa de diálogo. Quando o estilo de DS_SETFONT é especificado, essas matrizes também são seguidas por um valor de 16 bits especificando o tamanho do ponto e outra matriz de comprimento variável especificando um nome de face de tipo. Cada matriz consiste em um ou mais elementos de 16 bits. As matrizes de menu, classe, título e fonte devem estar alinhadas nos limites do WORD .
Imediatamente após a estrutura DLGTEMPLATE , há uma matriz de menus que identifica um recurso de menu para a caixa de diálogo. Se o primeiro elemento dessa matriz for 0x0000, a caixa de diálogo não terá nenhum menu e a matriz não terá outros elementos. Se o primeiro elemento for 0xFFFF, a matriz terá um elemento adicional que especifica o valor ordinal de um recurso de menu em um arquivo executável. Se o primeiro elemento tiver qualquer outro valor, o sistema tratará a matriz como uma cadeia de caracteres Unicode terminada em nulo que especifica o nome de um recurso de menu em um arquivo executável.
Seguindo a matriz de menus está uma matriz de classes que identifica a classe de janela da caixa de diálogo. Se o primeiro elemento da matriz for 0x0000, o sistema usará a classe de caixa de diálogo predefinida para a caixa de diálogo e a matriz não terá outros elementos. Se o primeiro elemento for 0xFFFF, a matriz terá um elemento adicional que especifica o valor ordinal de uma classe de janela do sistema predefinida. Se o primeiro elemento tiver qualquer outro valor, o sistema tratará a matriz como uma cadeia de caracteres Unicode terminada em nulo que especifica o nome de uma classe de janela registrada.
Seguindo a matriz de classes está uma matriz de título que especifica uma cadeia de caracteres Unicode terminada em nulo que contém o título da caixa de diálogo. Se o primeiro elemento dessa matriz for 0x0000, a caixa de diálogo não terá título e a matriz não terá outros elementos.
O valor de tamanho do ponto de 16 bits e a matriz typeface seguem a matriz de título, mas somente se o membro de estilo especificar o estilo DS_SETFONT. O valor de tamanho do ponto especifica o tamanho do ponto da fonte a ser usada para o texto na caixa de diálogo e seus controles. A matriz typeface é uma cadeia de caracteres Unicode terminada em nulo que especifica o nome da face de tipo para a fonte. Quando esses valores são especificados, o sistema cria uma fonte com o tamanho e a face de tipo especificados (se possível) e envia uma mensagem WM_SETFONT para o procedimento da caixa de diálogo e os procedimentos da janela de controle à medida que cria a caixa de diálogo e os controles.
Seguindo o cabeçalho DLGTEMPLATE em um modelo de caixa de diálogo padrão estão uma ou mais estruturas DLGITEMTEMPLATE que definem as dimensões e o estilo dos controles na caixa de diálogo. O membro cdit especifica o número de estruturas DLGITEMTEMPLATE no modelo. Essas estruturas DLGITEMTEMPLATE devem estar alinhadas nos limites DWORD .
Se você especificar cadeias de caracteres no menu, classe, título ou matrizes de face de tipo, deverá usar cadeias de caracteres Unicode.
Os membros x, y, cx e cy especificam valores em unidades da caixa de diálogo. Você pode converter esses valores em unidades de tela (pixels) usando a função MapDialogRect .
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Cabeçalho | winuser.h (inclua Windows.h) |
Confira também
Conceitual
Outros recursos
Referência