CAFE

MFC/COM/멀티미디어

[26기 박성신] 툴팁 컨트롤

작성자26기 박성신|작성시간13.09.20|조회수366 목록 댓글 0

ToolTip Control

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

26기 박성신

 

 

목차

u ToolTip Control의 정의

u ToolTip Control 생성

u ToolTip 메시지 등록

u 마우스 메시지 전달

u 동적 ToolTip Control

 

 

u  ToolTip Control의 정의

 

 

 

 

마우스 커서가 버튼이나 컨트롤 위에서 멈추었을 때 짤막한 도움말을 출력시켜주는 작은 윈도우

 

u  ToolTip Control 생성

- 인스턴스 추가

CToolTipCtrl ttctl;

 

- Create함수 추가

ttctrl.Create(this);

 

 

u  ToolTip 메시지 등록

- AddTool 함수를 사용한다.

ttctl.AddTool(&m_name, _T(“이름을 입력 하세요”));

 

 

u  마우스 메시지 전달

마우스 메시지를 전달 해주어야 툴팁 화면을 출력 할 수 있다.

PreTranslateMessage 함수 재정의

BOOL CEx_ToolTipDlg::PreTranslateMessage(MSG *pMsg)

{

       ttctl.RelayEvent(pMsg);

       return CDialog::PreTranslateMessage(pMsg);

}

 

 

u  동적 ToolTip Control(이동 조건에 따라 내용이 바뀜)

 

 

툴팁 컨트롤이 문자열을 표시해야 될 때마다 대화상자에 TTN_NEEDTEXT 이벤트를 발생

 

- 헤더에 선언

Class CEx_ToolTip : public CDialog

{

    ………

    void OnNeedText(NMHDR *pnmh, LRESULT *pResult);

}

 

- 메시지 맵 등록

BEGIN_MESSAGE_MAP(CEx_ToolTip, CDialogEX)

       ……

       ON_NOTIFY(TTN_NEEDTEXT, NULL, OnNeedText)

END_MESSAGE_MAP()

 

- 이벤트처리기

void CEx_ToolTipDlg::OnNeedText(NMHDR *pnmh, LRESULT *pResult)

{

     TOOLTIPTEXT *pttt = (TOOLTIPTEXT *)pnmh;

     If(pttt->hdr.idForm == (UINT)m_slide.GetSafeHwnd())

     {

         int pos = m_slide.GetPos();

         wsprintf(pttt->szText, TEXT(“현재 입력 값 : %d”), pos);

     }

}

첨부파일 툴팁 기술문서.docx

 

다음검색
현재 게시글 추가 기능 열기

댓글

댓글 리스트
맨위로

카페 검색

카페 검색어 입력폼