NM_CUSTOMDRAW código de notificação
Notifica a janela pai de um controle sobre operações de desenho personalizadas. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY .
NM_CUSTOMDRAW
#ifdef LIST_VIEW_CUSTOM_DRAW
lpNMCustomDraw = (LPNMLVCUSTOMDRAW) lParam;
#elif TOOL_TIPS_CUSTOM_DRAW
lpNMCustomDraw = (LPNMTTCUSTOMDRAW) lParam;
#elif TREE_VIEW_CUSTOM_DRAW
lpNMCustomDraw = (LPNMTVCUSTOMDRAW) lParam;
#elif TOOL_BAR_CUSTOM_DRAW
lpNMCustomDraw = (LPNMTBCUSTOMDRAW) lParam;
#else
lpNMCustomDraw = (LPNMCUSTOMDRAW) lParam;
#endif
Parâmetros
-
lParam
-
Um ponteiro para uma estrutura personalizada relacionada ao desenho que contém informações sobre a operação de desenho. A lista a seguir especifica os controles e suas estruturas associadas.
Control Estrutura de desenho personalizada Rebar, trackbar e cabeçalho NMCUSTOMDRAW Modo de exibição de lista NMLVCUSTOMDRAW Dica de ferramenta NMTTCUSTOMDRAW Exibição em árvore NMTVCUSTOMDRAW Barra de ferramentas NMTBCUSTOMDRAW
Valor retornado
O valor que seu aplicativo pode retornar depende da fase de desenho atual. O membro dwDrawStage da estrutura NMCUSTOMDRAW associada contém um valor que especifica o estágio de desenho. Você deve retornar um dos valores a seguir.
Código de retorno | Descrição |
---|---|
|
O controle desenhará a si mesmo. Ele não enviará códigos de notificação de NM_CUSTOMDRAW adicionais para esse ciclo de pintura. Esse sinalizador não pode ser usado com nenhum outro sinalizador. |
|
O controle desenhará apenas a tela de fundo. |
|
Seu aplicativo especificou uma nova fonte para o item; o controle usará a nova fonte. Para obter mais informações sobre como alterar fontes, consulte Alterando fontes e cores. Isso ocorre quando dwDrawStage é igual a CDDS_ITEMPREPAINT. |
|
O controle notificará o pai de quaisquer operações de desenho relacionadas a itens. Ele enviará NM_CUSTOMDRAW códigos de notificação antes e depois de desenhar itens. Isso ocorre quando dwDrawStage é igual a CDDS_PREPAINT. |
|
O controle notificará o pai depois de apagar um item. Isso ocorre quando dwDrawStage é igual a CDDS_PREPAINT. |
|
O controle enviará um código de notificação NM_CUSTOMDRAW quando o ciclo de pintura de todo o controle for concluído. Isso ocorre quando dwDrawStage é igual a CDDS_PREPAINT. |
|
Seu aplicativo receberá um código de notificação NM_CUSTOMDRAW com dwDrawStage definido como CDDS_ITEMPREPAINT | CDDS_SUBITEM antes de cada subitem de exibição de lista ser desenhado. Em seguida, você pode especificar fonte e cor para cada subitem separadamente ou retornar CDRF_DODEFAULT para processamento padrão. Isso ocorre quando dwDrawStage é igual a CDDS_ITEMPREPAINT. |
|
Seu aplicativo desenhou o item manualmente. O controle não desenhará o item. Isso ocorre quando dwDrawStage é igual a CDDS_ITEMPREPAINT. |
|
O controle não desenhará o retângulo de foco em torno de um item. |
Comentários
Atualmente, os seguintes controles dão suporte à funcionalidade de desenho personalizada: cabeçalho, exibição de lista, barra de rebar, barra de ferramentas, dica de ferramenta, barra de controle e modo de exibição de árvore. O desenho personalizado também terá suporte para controles de botão se você tiver um manifesto do aplicativo para garantir que Comctl32.dll versão 6 esteja disponível.
Se essa mensagem for tratada em um procedimento de caixa de diálogo, você deverá definir o valor retornado como parte dos dados da janela antes de retornar TRUE. Para obter mais informações, consulte DialogProc.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte |
Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte |
Windows Server 2003 [somente aplicativos da área de trabalho] |
Cabeçalho |
|
Confira também
-
Conceitual