Como processar mensagens de notificação

Uma folha de propriedades envia mensagens WM_NOTIFY para recuperar informações das páginas e notificar as páginas sobre ações do usuário.

O parâmetro lParam da mensagem é o endereço de uma estrutura NMHDR , que contém o identificador para a caixa de diálogo da folha de propriedades, o identificador para a caixa de diálogo da página e um código de notificação. A página deve responder a algumas mensagens de notificação definindo o valor DWL_MSGRESULT da página como TRUE ou FALSE.

O que você precisa saber

Tecnologias

Pré-requisitos

  • C/C++
  • Programação da interface do usuário do Windows

Instruções

Processar mensagens de notificação

O exemplo a seguir é um fragmento de código do procedimento de caixa de diálogo para uma página. Ele mostra como processar o código de notificação PSN_HELP.

case WM_NOTIFY:

    switch (((NMHDR FAR *) lParam)->code) 
    {
    case PSN_HELP:
        {
         
        char szBuf[FILE_LEN]; // Buffer for name of Help file

        // Display Help for the font properties page.
        LoadString(g_hinst, IDS_HELPFILE, &szBuf, sizeof(szBuf)/sizeof(szBuf[0]));
        WinHelp(((NMHDR FAR *)lParam)->hwndFrom, &szBuf, HELP_CONTEXT, IDH_FONT_PROPERTIES);                
        
        break;
        
         }
         
        // Process other property sheet notifications here.
    }
    

Usando folhas de propriedades

Demonstração de controles comuns do Windows (CppWindowsCommonControls)