處理工具提示的 TTN_NEEDTEXT 告知
做為 啟用工具提示一節中,您可以將下列輸入處理 TTN_NEEDTEXT 訊息至主控視窗的訊息對應:
ON_NOTIFY_EX(TTN_NEEDTEXT, 0, &CMyDialog::OnTtnNeedText)
- memberFxn
要呼叫的,當文字此按鈕所需的成員函式。
請注意工具提示的識別碼一定是 0。
宣告在類別定義的處理常式函式:
afx_msg BOOL OnTtnNeedText(UINT id, NMHDR *pNMHDR, LRESULT *pResult);
其中斜體參數:
id
傳送通知控制項的識別項。 不適用。 控制項 ID 從 NMHDR 結構中取得。pNMHDR
out 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);