다음을 통해 공유


NM_CUSTOMDRAW(목록 뷰) 알림 코드

그리기 작업에 대해 부모 창에 알리기 위해 목록 뷰 컨트롤에서 보냅니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다.

NM_CUSTOMDRAW

    lpNMCustomDraw = (LPNMLVCUSTOMDRAW) lParam;

매개 변수

lParam

그리기 작업에 대한 정보가 포함된 NMLVCUSTOMDRAW 구조체에 대한 포인터입니다. 이 구조체의 첫 번째 멤버인 nmcdNMCUSTOMDRAW 구조체에 대한 포인터입니다. nmcd가 가리키는 구조체의 dwItemSpec 멤버에는 그려지는 항목의 식별자가 포함되고 lItemlParam 멤버에는 애플리케이션 정의 데이터가 포함됩니다.

반환 값

애플리케이션이 반환할 수 있는 값은 현재 그리기 단계에 따라 다릅니다. 연결된 NMCUSTOMDRAW 구조체의 dwDrawStage 멤버는 그리기 단계를 지정하는 값을 보유합니다. 다음 값 중 하나를 반환해야 합니다.

반환 코드 설명
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. 각 목록 보기 하위 항목을 그리기 전에 애플리케이션에서 dwDrawStage가 CDDS_ITEMPREPAINT | CDDS_SUBITEM으로 설정된 NM_CUSTOMDRAW 컨트롤 코드를 받습니다. 그러면 각 하위 항목에 대한 글꼴과 색을 별도로 지정하거나, 기본 처리를 위해 CDRF_DODEFAULT를 반환할 수 있습니다. 이는 dwDrawStage가 CDDS_ITEMPREPAINT와 같을 때 발생합니다.
CDRF_SKIPDEFAULT
애플리케이션이 항목을 수동으로 그렸습니다. 컨트롤은 항목을 그리지 않습니다. 이는 dwDrawStage가 CDDS_ITEMPREPAINT와 같을 때 발생합니다.
CDRF_SKIPPOSTPAINT
Windows Vista 컨트롤은 포커스 사각형을 그리지 않습니다.

설명

버전 5.80. CDRF_NEWFONT를 반환하여 글꼴을 변경하면 목록 뷰 컨트롤에 잘린 텍스트가 표시될 수 있습니다. 이 동작은 이전 버전의 공용 컨트롤과의 호환성을 위해 필요합니다. 목록 뷰 컨트롤의 글꼴을 변경하려면 컨트롤에 항목을 추가하기 전에 wParam 값이 5로 설정된 CCM_SETVERSION 메시지를 보내면 더 나은 결과를 가져올 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버
Windows Server 2003 [데스크톱 앱만 해당]
헤더
Commctrl.h