Поделиться через


код уведомления NM_CUSTOMDRAW (представление списка)

Отправляется элементом управления представлением списка для уведомления его родительских окон об операциях рисования. Этот код уведомления отправляется в виде сообщения WM_NOTIFY .

NM_CUSTOMDRAW

    lpNMCustomDraw = (LPNMLVCUSTOMDRAW) lParam;

Параметры

lParam

Указатель на структуру NMLVCUSTOMDRAW , содержащую сведения об операции рисования. Первый член этой структуры, nmcd, является указателем на структуру NMCUSTOMDRAW . Член dwItemSpec структуры, на которую указывает nmcd , содержит идентификатор отрисовываемого элемента, а член lItemlParam — данные, определяемые приложением.

Возвращаемое значение

Возвращаемое приложением значение зависит от текущего этапа рисования. Элемент dwDrawStage связанной структуры NMCUSTOMDRAW содержит значение, указывающее этап рисования. Необходимо вернуть одно из следующих значений.

Код возврата Описание
CDRF_DODEFAULT
Элемент управления будет рисовать сам. Он не будет отправлять дополнительные коды уведомлений NM_CUSTOMDRAW для этого цикла рисования. Это происходит, когда dwDrawStage равно CDDS_PREPAINT.
CDRF_DOERASE
Windows Vista. Элемент управления будет закрашивать только фон.
CDRF_NOTIFYITEMDRAW
Элемент управления уведомляет родителя о любых операциях рисования, связанных с элементами. Он будет отправлять коды уведомлений NM_CUSTOMDRAW до и после рисования элементов. Это происходит, когда dwDrawStage равно CDDS_PREPAINT.
CDRF_NOTIFYPOSTERASE
Элемент управления уведомляет родительского элемента после стирания элемента. Это происходит, когда dwDrawStage равно CDDS_PREPAINT.
CDRF_NOTIFYPOSTPAINT
Элемент управления уведомит родительский элемент после рисования элемента. Это происходит, когда dwDrawStage равно CDDS_PREPAINT.
CDRF_NEWFONT
Приложение указало новый шрифт для элемента; элемент управления будет использовать новый шрифт. Дополнительные сведения об изменении шрифтов см. в разделе Изменение шрифтов и цветов. Это происходит, когда dwDrawStage равно CDDS_ITEMPREPAINT.
CDRF_NOTIFYSUBITEMDRAW
Версия 4.71. Приложение получит код элемента управления NM_CUSTOMDRAW с параметром dwDrawStage , равным CDDS_ITEMPREPAINT | CDDS_SUBITEM перед рисованием каждого подэлемента представления списка. Затем можно указать шрифт и цвет для каждого подэлемента отдельно или вернуть CDRF_DODEFAULT для обработки по умолчанию. Это происходит, когда dwDrawStage равно CDDS_ITEMPREPAINT.
CDRF_SKIPDEFAULT
Приложение нарисовало элемент вручную. Элемент управления не будет рисовать элемент . Это происходит, когда dwDrawStage равно CDDS_ITEMPREPAINT.
CDRF_SKIPPOSTPAINT
Windows Vista. Элемент управления не будет рисовать прямоугольник фокуса.

Комментарии

Версия 5.80. Если изменить шрифт, возвращая CDRF_NEWFONT, элемент управления представлением списка может отображать обрезанный текст. Это необходимо для обеспечения обратной совместимости с более ранними версиями общих элементов управления. Если вы хотите изменить шрифт элемента управления представлением списка, вы получите лучшие результаты, если вы отправите CCM_SETVERSION сообщение со значением wParam , равным 5, прежде чем добавлять какие-либо элементы в элемент управления.

Требования

Требование Значение
Минимальная версия клиента
Windows Vista [только классические приложения]
Минимальная версия сервера
Windows Server 2003 [только классические приложения]
Заголовок
Commctrl.h