여러 줄 도구 설명을 구현하는 방법

여러 줄 도구 설명을 사용하면 텍스트를 여러 줄로 표시할 수 있습니다.

공용 컨트롤 버전 4.70 이상에서 지원됩니다. 애플리케이션은 디스플레이 사각형의 너비를 지정하는 TTM_SETMAXTIPWIDTH 메시지를 보내 여러 줄 도구 설명을 만듭니다. 이 너비를 초과하는 텍스트는 표시 영역을 넓히지 않고 다음 줄로 래핑됩니다. 추가 줄을 넣기 위해 필요에 따라 사각형 높이를 늘립니다. 도구 설명 컨트롤은 줄을 자동으로 래핑하거나 캐리지 리턴/줄 바꿈 조합(\r\n)을 사용하여 특정 위치에서 줄 바꿈을 강제 적용할 수 있습니다.

결과는 다음 일러스트레이션과 같이 표시됩니다.

screen shot of a dialog box with a tooltip that contains text arranged like a multi-line paragraph

참고 항목

NMTTDISPINFO 구조체의 szText 멤버가 지정한 텍스트 버퍼는 최대 80자까지 수용할 수 있습니다. 더 긴 문자열을 사용해야 하는 경우 NMTTDISPINFOlpszText 멤버를 원하는 텍스트가 포함된 버퍼로 지정하세요.

 

알아야 하는 작업

기술

필수 구성 요소

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

지침

여러 줄 도구 설명 구현

다음 코드 조각은 단순 TTN_GETDISPINFO 알림 처리기의 예제입니다. 디스플레이 사각형을 150픽셀로 설정하여 여러 줄 도구 설명을 사용할 수 있습니다. 수동 줄 바꿈은 첫 번째 단어 뒤에 삽입되어 단순 줄 바꿈만 아니라 문단도 바꿀 수 있음을 표시합니다.

    case WM_NOTIFY:
    {
        switch (((LPNMHDR)lParam)->code)
        {
        case TTN_GETDISPINFO:
            LPNMTTDISPINFO pInfo = (LPNMTTDISPINFO)lParam;
            SendMessage(pInfo->hdr.hwndFrom, TTM_SETMAXTIPWIDTH, 0, 150);
            wcscpy_s(pInfo->szText, ARRAYSIZE(pInfo->szText), 
                L"This\nis a very long text string " \
                L"that must be broken into several lines.");
            break;
        }
        break;
    }

도구 설명 컨트롤 사용