【发布时间】:2011-03-16 18:10:06
【问题描述】:
我实现了自己的 CMFCToolTipCtrl 类以修改功能区控件中的增强工具提示。但我无法从 NMHDR 结构中确定资源 ID。如何获取它?
////////////////////////// 主应用程序.cpp //////////////////////////
CMFCToolTipInfo ttParams;
ttParams.m_bVislManagerTheme =FALSE;
theApp.GetTooltipManager()->SetTooltipParams(AFX_TOOLTIP_TYPE_ALL, RUNTIME_CLASS(MTP_CMFCToolTipCtrl), &ttParams);
////////////////////////// MTP_CMFCToolTipCtrl.cpp //////////////////////////
BEGIN_MESSAGE_MAP(MTP_CMFCToolTipCtrl, CMFCToolTipCtrl) ON_NOTIFY_REFLECT(TTN_SHOW, OnShow) ON_WM_SETFOCUS() END_MESSAGE_MAP()
void MTP_CMFCToolTipCtrl::OnShow(NMHDR* pNMHDR, LRESULT* pResult)
{
int m_nCurrID=?
// 如何使用 NMHDR 结构确定 CMFCRibbonButton 的 Resource-ID ??
开关 (m_nCurrID) {
case ID_EDIT_PASTE:
SetDescription (_T("paste button description..."));
break;
case ID_EDIT_CUT:
SetDescription (_T("cut button description..."));
break;
default:
SetDescription (_T (""));
}
CMFCToolTipCtrl::OnShow (pNMHDR, pResult);
}
【问题讨论】:
-
你的Control的ID不是TTN_SHOW?
-
@Sunscreen 无法得到你请简单解释一下。
-
我用 NMHDR 结构尝试了许多不同的投射,但似乎没有任何效果..帮帮我..
标签: visual-c++ mfc