도구 설명에 대한 TTN_NEEDTEXT 알림 처리
도구 팁을 사용하도록 설정하면 소유자 창의 메시지 맵에 다음 항목을 추가하여 TTN_NEEDTEXT 메시지를 처리합니다.
ON_NOTIFY_EX(TTN_NEEDTEXT, 0, &CMyDialog::OnTtnNeedText)
memberFxn
이 단추에 텍스트가 필요할 때 호출할 멤버 함수입니다.
도구 설명의 ID는 항상 0입니다.
다음과 같이 클래스 정의에서 처리기 함수를 선언합니다.
afx_msg BOOL OnTtnNeedText(UINT id, NMHDR* pNMHDR, LRESULT* pResult);
기울임꼴 매개 변수는 다음과 같습니다.
id
알림을 보낸 컨트롤의 식별자입니다. 사용되지 않습니다. 컨트롤 ID는 NMHDR 구조체에서 가져옵니다.
pNMHDR
NMTTDISPINFO 구조체에 대한 포인터입니다. 이 구조체는 TOOLTIPTEXT 구조체에서도 자세히 설명합니다.
pResult
반환하기 전에 설정할 수 있는 결과 코드에 대한 포인터입니다. TTN_NEEDTEXT 처리기는 pResult 매개 변수를 무시할 수 있습니다.
양식 보기 알림 처리기의 예:
BOOL CMyDialog::OnTtnNeedText(UINT id, NMHDR* pNMHDR, LRESULT* pResult)
{
UNREFERENCED_PARAMETER(id);
NMTTDISPINFO* pTTT = (NMTTDISPINFO*)pNMHDR;
UINT_PTR nID = pNMHDR->idFrom;
BOOL bRet = FALSE;
if (pTTT->uFlags & TTF_IDISHWND)
{
// idFrom is actually the HWND of the tool
nID = ::GetDlgCtrlID((HWND)nID);
if (nID)
{
_stprintf_s(pTTT->szText, sizeof(pTTT->szText) / sizeof(TCHAR),
_T("Control ID = %d"), nID);
pTTT->hinst = AfxGetResourceHandle();
bRet = TRUE;
}
}
*pResult = 0;
return bRet;
}
호출 EnableToolTips
(이 조각에서 OnInitDialog
가져온):
EnableToolTips(TRUE);