Como o procedimento de janela de quadro, um procedimento de janela de filho MDI usa uma função especial para o processamento de mensagens por padrão. Todas as mensagens que o procedimento de janela de filho não identificador devem ser passadas para a função de DefMDIChild em vez de para o DefWindowProc função. Além disso, algumas mensagens de gerenciamento de janela devem ser passadas para DefMDIChild, mesmo se o aplicativo manipula a mensagem, em ordem para MDI funcionar corretamente. A seguir estão as mensagens que o aplicativo deve passar para DefMDIChild.
Mensagem | Resposta |
---|---|
WM_CHILDACTIVATE | Realiza processamento de ativação quando janelas de filho MDI são dimensionadas, movidas ou exibidas. Esta mensagem deve ser passada. |
WM_GETMINMAXINFO | Calcula o tamanho de uma janela de filho MDI maximizada, baseada o tamanho atual da janela do cliente MDI. |
WM_MENUCHAR | Passa a mensagem para a janela do quadro MDI. |
WM_MOVE | Recalcula as barras de rolagem de cliente MDI, se eles estiverem presentes. |
WM_SETFOCUS | Ativa a janela filho, se não for a janela de filho MDI ativa. |
WM_SIZE | Executa operações necessárias para alterar o tamanho de uma janela, especialmente para maximizar ou restaurar uma janela filho MDI. Falhar transmitir esta mensagem para a função DefMDIChild produz resultados altamente indesejáveis. |
WM_SYSCOMMAND | Lida com comandos do menu janela (anteriormente conhecido como sistema): SC_NEXTWINDOW, SC_PREVWINDOW, SC_MOVE, SC_SIZE e SC_MAXIMIZE. |