共用方式為


處理工具提示的 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
傳送通知之控制項的識別碼。 未使用。 控制項識別碼取自 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);

另請參閱

非衍生自 CFrameWnd 之視窗中的工具提示