NM_CUSTOMDRAW (exibição de lista) código de notificação

Enviado por um controle de exibição de lista para notificar suas janelas pai sobre operações de desenho. Esse código de notificação é enviado na forma de uma mensagem de WM_NOTIFY .

NM_CUSTOMDRAW

    lpNMCustomDraw = (LPNMLVCUSTOMDRAW) lParam;

Parâmetros

lParam

Ponteiro para uma estrutura NMLVCUSTOMDRAW que contém informações sobre a operação de desenho. O primeiro membro dessa estrutura, nmcd, é um ponteiro para uma estrutura NMCUSTOMDRAW . O membro dwItemSpec da estrutura apontada pelo nmcd contém o identificador do item que está sendo desenhado e o membro lItemlParam contém seus dados definidos pelo aplicativo.

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
CDRF_DODEFAULT
O controle desenhará a si mesmo. Ele não enviará nenhum código de notificação de NM_CUSTOMDRAW adicional para esse ciclo de pintura. Isso ocorre quando dwDrawStage é igual a CDDS_PREPAINT.
CDRF_DOERASE
Windows Vista. O controle pintará apenas a tela de fundo.
CDRF_NOTIFYITEMDRAW
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.
CDRF_NOTIFYPOSTERASE
O controle notificará o pai depois de apagar um item. Isso ocorre quando dwDrawStage é igual a CDDS_PREPAINT.
CDRF_NOTIFYPOSTPAINT
O controle notificará o pai depois de pintar um item. Isso ocorre quando dwDrawStage é igual a CDDS_PREPAINT.
CDRF_NEWFONT
O 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.
CDRF_NOTIFYSUBITEMDRAW
Versão 4.71. Seu aplicativo receberá um código de controle 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.
CDRF_SKIPDEFAULT
O aplicativo desenhou o item manualmente. O controle não desenhará o item. Isso ocorre quando dwDrawStage é igual a CDDS_ITEMPREPAINT.
CDRF_SKIPPOSTPAINT
Windows Vista. O controle não desenhará o retângulo de foco.

Comentários

Versão 5.80. Se você alterar a fonte retornando CDRF_NEWFONT, o controle de exibição de lista poderá exibir texto recortado. Esse comportamento é necessário para compatibilidade com versões anteriores dos controles comuns. Se você quiser alterar a fonte de um controle de exibição de lista, obterá melhores resultados se enviar uma mensagem CCM_SETVERSION com o valor wParam definido como 5 antes de adicionar quaisquer itens ao controle.

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
Commctrl.h