Benachrichtigung der Behandlungs-TTN NEEDTEXT für QuickInfos
Als Teil QuickInfos aktivieren bearbeiten Sie die TTN_NEEDTEXT Meldung, indem Sie folgenden Eintrag zur Meldungszuordnung des Besitzerfensters hinzufügen:
ON_NOTIFY_EX(TTN_NEEDTEXT, 0, &CMyDialog::OnTtnNeedText)
- memberFxn
Die Memberfunktion aufgerufen werden soll, wenn Text für diese Schaltfläche nicht erforderlich ist.
Beachten Sie, dass die ID einer QuickInfo immer 0 ist.
Deklarieren Sie eine Handlerfunktion in der Klassendefinition wie folgt:
afx_msg BOOL OnTtnNeedText(UINT id, NMHDR *pNMHDR, LRESULT *pResult);
wo die kursiv gedruckten Parameter sind:
id
Bezeichner des Steuerelements, das die eine Benachrichtigung gesendet hat.Wird nicht verwendet.Die Steuerelement-IDs wird von der NMHDR-Struktur übernommen.pNMHDR
Ein Zeiger auf die NMTTDISPINFO-Struktur.Diese Struktur wird auch unter Die TOOLTIPTEXT-Struktur erläutert.pResult
Ein Zeiger, der auf führen Code, den Sie festlegen können, bevor Sie zurückkehren.TTN_NEEDTEXT-Handler können den pResult-Parameter wird ignoriert.
Ein Beispiel für einen Formularansichts benachrichtigungs Klassenhandler:
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;
}
Aufruf EnableToolTips (dieses Fragment aus OnInitDialog):
EnableToolTips(TRUE);