Araç ipuçları için ttn_needtext bildirim işleme
Bir parçası olarak araç ipuçlarını etkinleştirme, siz ele ttn_needtext sahibi penceresinin ileti haritası için aşağıdaki giriş ekleyerek ileti:
ON_NOTIFY_EX(TTN_NEEDTEXT, 0, &CMyDialog::OnTtnNeedText)
- memberFxn
Bu düğme için metin gerektiğinde adlı üye işlevi.
Araç İpucu her zaman kimliğidir Not 0.
İşleyici işlevinizde sınıf tanımı aşağıdaki gibi bildirirsiniz:
afx_msg BOOL OnTtnNeedText(UINT id, NMHDR *pNMHDR, LRESULT *pResult);
Burada italik Parametreler şunlardır:
id
Gönderilen bildirim denetim tanıtıcısı. Kullanılmıyor. Denetim Kimliği alınır nmhdr yapısı.pNMHDR
Bir işaretçi NMTTDISPINFO yapısı. Bu yapı da ele daha Araç İpucu metni yapı.pResult
Sonuç kodu için bir işaretçi, döndürmeden önce ayarlayabilirsiniz. ttn_needtext işleyicileri göz ardı pResult parametresi.
Form görünümünde bildirim işleyicisi örnek olarak:
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;
}
Call EnableToolTips (alınan bu parça OnInitDialog):
EnableToolTips(TRUE);