날짜 및 시간 선택기 알림을 처리하는 방법

이 섹션에서는 날짜 및 시간 선택기 알림을 처리하는 방법을 보여 줍니다.

알아야 하는 작업

기술

필수 구성 요소

  • C/C++
  • Windows 사용자 인터페이스 프로그래밍

지침

DTP(날짜 및 시간 선택기) 컨트롤은 일반적으로 사용자의 입력에 의해 트리거되는 이벤트가 컨트롤에서 발생할 때 부모 창에 알림 메시지를 보냅니다. 애플리케이션에는 알림 메시지 형식을 결정하고 적절하게 응답하는 코드가 포함되어야 합니다.

애플리케이션에서 DTP 컨트롤과 함께 콜백 필드를 사용하려는 경우 DTN_FORMATQUERY, DTN_FORMATDTN_WMKEYDOWN 알림 코드를 처리할 준비가 되어 있어야 합니다. 콜백 필드에 대한 자세한 내용은 콜백 필드를 참조하세요.

다음 C++ 코드 예는 DTP 컨트롤에서 보낸 알림 메시지를 식별하고 적절한 애플리케이션 정의 함수를 호출합니다. 이 예에 나타나는 알림을 처리하는 방법을 설명하는 코드 예는 다음 항목을 참조하세요.

토픽
DTN_DATETIMECHANGE 알림을 처리하는 방법
DTN_FORMATQUERY 알림 처리 방법
DTN_FORMAT 알림을 처리하는 방법
DTN_WMKEYDOWN 알림 처리 방법

 

BOOL WINAPI DoNotify(HWND hwnd, WPARAM wParam, LPARAM lParam)
{
    LPNMHDR hdr = (LPNMHDR)lParam;

    switch(hdr->code){

        case DTN_DATETIMECHANGE:{
            LPNMDATETIMECHANGE lpChange = (LPNMDATETIMECHANGE)lParam;
            DoDateTimeChange(lpChange);
        }
        break;

        case DTN_FORMATQUERY:{
            LPNMDATETIMEFORMATQUERY lpDTFQuery = (LPNMDATETIMEFORMATQUERY)lParam;

            // Process DTN_FORMATQUERY to ensure that the control
            // displays callback information properly.
            DoFormatQuery(hdr->hwndFrom, lpDTFQuery);
        }
        break;

        case DTN_FORMAT:{
            LPNMDATETIMEFORMAT lpNMFormat = (LPNMDATETIMEFORMAT) lParam;

            // Process DTN_FORMAT to supply information about callback
            // fields (fields) in the DTP control.
            DoFormat(hdr->hwndFrom, lpNMFormat);
        }
        break;

        case DTN_WMKEYDOWN:{
            LPNMDATETIMEWMKEYDOWN lpDTKeystroke = 
                            (LPNMDATETIMEWMKEYDOWN)lParam;

            // Process DTN_WMKEYDOWN to respond to a user's keystroke in
            // a callback field.
            DoWMKeydown(hdr->hwndFrom, lpDTKeystroke);
        }
        break;
    }

    // All of the above notifications require the owner to return zero.
    return FALSE;
}

날짜 및 시간 선택기 알림

날짜 및 시간 선택기 컨트롤 참조

날짜 및 시간 선택기 컨트롤 사용

날짜 및 시간 선택기