WM_NOTIFYFORMAT 메시지

창이 WM_NOTIFY 알림 메시지에서 ANSI 또는 유니코드 구조체를 허용하는지 결정합니다. WM_NOTIFYFORMAT 메시지는 공용 컨트롤에서 부모 창으로, 부모 창에서 공용 컨트롤로 전송됩니다.

매개 변수

wParam

WM_NOTIFYFORMAT 메시지를 보내는 창에 대한 핸들입니다. lParam이 NF_QUERY인 경우 이 매개 변수는 컨트롤에 대한 핸들입니다. lParam이 NF_REQUERY인 경우 이 매개 변수는 컨트롤의 부모 창에 대한 핸들입니다.

lParam

WM_NOTIFYFORMAT 메시지의 특성을 지정하는 명령 값입니다. 이는 다음 값 중 하나입니다.

의미
NF_QUERY
이 메시지는 WM_NOTIFY 메시지에서 ANSI 또는 유니코드 구조체를 사용해야 하는지 여부를 결정하기 위한 쿼리입니다. 이 명령은 컨트롤을 만드는 동안 및 NF_REQUERY 명령에 대한 응답으로 컨트롤에서 부모 창으로 전송됩니다.
NF_REQUERY
이 메시지는 부모 창에 이 메시지의 NF_QUERY 형식을 보내도록 컨트롤에 대한 요청입니다. 이 명령은 부모 창에서 전송됩니다. 부모 창은 컨트롤에 WM_NOTIFY 메시지에서 사용할 구조체 형식에 대해 다시 쿼리하도록 요청합니다. lParam이 NF_REQUERY인 경우 반환 값은 재쿼리 작업의 결과입니다.

반환 값

다음 값 중 하나를 반환합니다.

반환 코드 설명
NFR_ANSI
컨트롤에서 보낸 WM_NOTIFY 메시지에 ANSI 구조체를 사용해야 합니다.
NFR_UNICODE
컨트롤에서 보낸 WM_NOTIFY 메시지에 유니코드 구조체를 사용해야 합니다.
0
오류가 발생했습니다.

설명

공용 컨트롤이 만들어지면 컨트롤은 WM_NOTIFY 메시지에서 사용할 구조체 형식을 결정하기 위해 WM_NOTIFYFORMAT 메시지를 부모 창으로 보냅니다. 부모 창이 이 메시지를 처리하지 않는 경우 DefWindowProc 함수는 부모 창의 형식에 따라 응답합니다. 즉, 부모 창이 유니코드 창이면 DefWindowProc는 NFR_UNICODE를 반환하고 부모 창이 ANSI 창이면 DefWindowProc는 NFR_ANSI를 반환합니다. 부모 창이 대화 상자이고 이 메시지를 처리하지 않는 경우 DefDlgProc 함수는 대화 상자 형식(유니코드 또는 ANSI)에 따라 유사하게 응답합니다.

부모 창은 lParam을 NF_REQUERY로 설정하고 컨트롤에 WM_NOTIFYFORMAT 메시지를 보내 공용 컨트롤이 WM_NOTIFY 메시지에서 사용하는 구조체 형식을 변경할 수 있습니다. 이로 인해 컨트롤이 WM_NOTIFYFORMAT 메시지의 NF_QUERY 형식을 부모 창으로 보냅니다.

모든 공용 컨트롤은 WM_NOTIFYFORMAT 메시지를 보냅니다. 그러나 표준 Windows 컨트롤(편집 컨트롤, 콤보 상자, 목록 상자, 단추, 스크롤 막대 및 정적 컨트롤)은 그렇지 않습니다.

요구 사항

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