CMFCToolbar Наследует функцию EnableToolTip, которая не помогает разработчику, если он динамически создает панель инструментов и не добавляет описание и заголовок в ресурс.
Я сделал расширение для CMFCToolBar и написал функцию:
BOOL CMFCToolBarEx::OnNeedTipText(UINT /*id*/, NMHDR* pNMH, LRESULT* /*pResult*/)
{
TOOLTIPTEXT *pTTT = (TOOLTIPTEXT *)pNMH;
// UINT nID = static_cast<int>(pNMH->idFrom);
CString strTip = _T("");
CPoint point;
::GetCursorPos(&point);
ScreenToClient(&point);
INT_PTR nHit = ((CMFCToolBar*)this)->HitTest(point);
if(nHit == -1)
return FALSE;
CMFCToolBarButton* pButton = GetButton((int)nHit);
strTip = pButton->m_strText;
_tcscpy(pTTT->lpszText , strTip.GetBuffer(0));
return TRUE;
}
чтобы показать подсказку в кнопке cmfctoolbar.
Кнопка cmfctoolbar не принимает параметров и не имеет функции для установки описания. Конструктор принимает параметр как:
pToolBarButton = new CMFCToolBarButton(nId, nIconIndex, lpszText);
Если я установлю параметр lpszText с заголовком, появится только всплывающая подсказка вот так
Мне нужно добавить описание на эту панель инструментов и просмотреть его вот так , если кто-нибудь может предложить лучший способ сделать это