Compartilhar via


CreateDialogIndirectParam

Windows Mobile SupportedWindows Embedded CE Supported

9/9/2008

Essa função cria uma sem janela restrita caixa de diálogo de um modelo caixa diálogo na memória. Antes de exibir a caixa diálogo, a função passa um application-defined value para o procedimento caixa de diálogo como o lParam parâmetro da mensagem WM_INITDIALOG. Um aplicativo pode usar esse valor para inicializar controles caixa de diálogo.

Syntax

HWND CreateDialogIndirectParam( 
  HINSTANCE hInstance, 
  LPCDLGTEMPLATE lpTemplate, 
  HWND hWndParent, 
  DLGPROC lpDialogFunc, 
  LPARAM lParamInit
); 

Parameters

  • hInstance
    [no] Identificador para o módulo que irá criar caixa de diálogo.
  • lpTemplate
    [no] Ponteiro longo para um objeto memória global contendo um modelo que CreateDialogIndirectParam usa para criar a caixa diálogo. Um modelo caixa diálogo consiste de um cabeçalho que descreve a caixa diálogo, seguida por um ou mais blocos adicionais de dados que descrevem cada um dos controles na caixa de diálogo. O modelo pode usar ambos o padrão formato ou o estendido formato.

    Em um padrão modelo, o cabeçalho é um DLGTEMPLATE estrutura seguida adicionais matrizes variable-length. Os dados para cada controle consiste de um DLGITEMTEMPLATE estrutura seguida adicionais matrizes variable-length.

    Após CreateDialogIndirectParam Retorna, você pode livre de modelo, que só é usado para get a caixa diálogo iniciada.

  • hWndParent
    [no] Identificador para a janela proprietária caixa de diálogo.
  • lpDialogFunc
    [no] Ponteiro longo para o procedimento caixa de diálogo. Para obter mais informações sobre o procedimento caixa de diálogo, consulte DialogProc.
  • lParamInit
    [no] Especifica o valor para transmitir para o caixa de diálogo in a lParam parâmetro da mensagem WM_INITDIALOG.

Return Value

O manipulador de janela para caixa de diálogo indica sucesso. NULL Indica falha. Para informações de erro estendidas get, chamar GetLastError.

Remarks

O CreateDialogIndirectParam função usa o CreateWindowEx função para criar a caixa diálogo. CreateDialogIndirectParam Em seguida, envia uma WM_INITDIALOG mensagem para o procedimento caixa de diálogo. A função exibe a caixa diálogo se o modelo especifica o estilo WS_VISIBLE. Finalmente, CreateDialogIndirectParam Retorna o manipulador de janela para caixa de diálogo.

Após CreateDialogIndirectParam Retorna, você pode usar o ShowWindow função para exibir a caixa diálogo (se ela já não estiver visível). Para destruir caixa de diálogo, use o DestroyWindow função.

Em um padrão modelo caixa diálogo, o DLGTEMPLATE estrutura e cada um do DLGITEMTEMPLATE Estruturas devem ser alinhadas no DWORD Os limites. A matriz dados de criação que segue um DLGITEMTEMPLATE estrutura também deve ser alinhada em um DWORD limite. Todos as outras matrizes de comprimento variável no modelo devem ser alinhados no Word Os limites.

Todas as seqüências caractere no modelo caixa de diálogo, such as títulos para a caixa diálogo e botões, devem ser seqüências de caracteres Unicode.

Caixas de Diálogo fora a área visível da Tela não são automaticamente reposicionados.

Se o usuário pressiona ALT+H enquanto a caixa diálogo tem o foco de entrada, o sistema envia uma mensagem WM_HELP para o procedimento diálogo. Um aplicativo deve responder a esta mensagem exibindo contextual ajuda para caixa de diálogo.

O seguinte estilos não são com suporte para a estilo membro das DLGTEMPLATE estrutura:

  • DS_SETFONT
    Não é possível definir a fonte dentro de caixas diálogo.
  • DS_3DLOOK
    Fornece a caixa diálogo um non-bold_font e desenha tridimensional bordas em torno das janelas controle caixa de diálogo.

    O estilo DS_3DLOOK é exigido apenas pelos aplicativos ®-Based Win32 Microsoft compilado para sistema Versões Anteriores ao Windows 95 ou Windows NT® 4.0. O sistema automaticamente aplica a tridimensional aspecto às caixas diálogo criadas por aplicativos compilado para atual versões de sistema.

  • DS_RECURSE
    Não exigido. Qualquer caixa diálogo filho é automaticamente considerados como uma caixa diálogo recursivo.
  • DS_CONTROL
    Não exigido.

Ao posicionamento usar como padrão get, use o estilo DS_CENTER.

Se o estilo WS_POPUP não é especificado, o estilo estilo será usado.

Requirements

Header winuser.h
Library Dlgmgr.lib
Windows Embedded CE Windows CE 1.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

CreateDialog
CreateDialogIndirect
CreateDialogParam
CreateWindowEx
DestroyWindow
DialogProc
ShowWindow
WM_INITDIALOG
WM_SETFONT
DLGITEMTEMPLATE
DLGTEMPLATE
Dialog Boxes Functions