. 툴팁

툴바에 TBSTYLE_TOOLTIPS 스타일을 주면 툴팁을 사용할 수 있다. 툴바는 마우스 커서가 일정한 시간 동안 버튼 위에 머무르고 있으면 부모 윈도우로 TTN_GETDISPINFO 통지 메시지를 보내준다. 이 메시지를 처리하는 OnNotify 함수를 다음과 같이 작성한다.

 

void OnNotify(HWND hWnd,WPARAM wParam,LPARAM lParam)

{

     LPNMHDR hdr;

     LPNMTTDISPINFO disp;

     hdr=(LPNMHDR)lParam;

     disp=(LPNMTTDISPINFO)lParam;

 

     switch (hdr->code) {

     case TTN_GETDISPINFO:

          switch (wParam) {

          case IDM_FILE_NEW:

              disp->lpszText="새 파일(Ctrl+N)";

              break;

          case IDM_FILE_OPEN:

              disp->lpszText="파일 열기(Ctrl+O)";

              break;

          case IDM_FILE_SAVE:

              disp->lpszText="파일 저장(Ctrl+S)";

              break;

          case IDM_EDIT_CUT:

              disp->lpszText="잘라내기(Ctrl+X)";

              break;

          case IDM_EDIT_COPY:

              disp->lpszText="복사(Ctrl+C)";

              break;

          case IDM_EDIT_PASTE:

              disp->lpszText="붙여넣기(Ctrl+V)";

              break;

          case IDM_EDIT_UNDO:

              disp->lpszText="실행취소(Ctrl+Z)";

              break;

          case IDM_EDIT_REDO:

              disp->lpszText="재실행(Ctrl+Y)";

              break;

          case IDM_VIEW_WORDWRAP:

              disp->lpszText="자동개행(Ctrl+W)";

              break;

          case IDM_SEARCH_FIND:

              disp->lpszText="찾기(Ctrl+F)";

               break;

          }

          break;

     }

}

 

이 메시지를 받았을 때 마우스 커서의 위치를 보고 출력할 툴 텍스트를 대입하면 툴팁이 나타난다. 툴 버튼에 대한 간단한 설명과 단축키를 툴팁으로 보여주었다. 좀 더 상세한 설명을 작성하면 좋겠지만 워낙 기본적인 버튼이라 더 이상 상세한 설명이 불필요한 것 같다.