我为工具条生成一个按钮
CToolBarCtrl& ctrl=m_wndToolBar.GetToolBarCtrl();
int bmindex=ctrl.AddBitmap(1,IDB_1);
TBBUTTON bt;
ZeroMemory(&bt,sizeof(TBBUTTON));
bt.fsState|=TBSTATE_ENABLED;
bt.fsStyle|=TBSTYLE_BUTTON;
bt.idCommand=ID_POPTEMP_1;//ID_POPTEMP_1是我的一个菜单的子项ID.
bt.iBitmap=bmindex;
ASSERT(ctrl.AddButtons(1,&bt));
RecalcLayout();
现在,我想在程序中改变此按钮的提示,怎么做?
CToolBarCtrl& ctrl=m_wndToolBar.GetToolBarCtrl();
int bmindex=ctrl.AddBitmap(1,IDB_1);
TBBUTTON bt;
ZeroMemory(&bt,sizeof(TBBUTTON));
bt.fsState|=TBSTATE_ENABLED;
bt.fsStyle|=TBSTYLE_BUTTON;
bt.idCommand=ID_POPTEMP_1;//ID_POPTEMP_1是我的一个菜单的子项ID.
bt.iBitmap=bmindex;
ASSERT(ctrl.AddButtons(1,&bt));
RecalcLayout();
现在,我想在程序中改变此按钮的提示,怎么做?
ON_NOTIFY_EX(TTN_NEEDTEXT, 0, OnToolTipText)
END_MESSAGE_MAP()BOOL CTypeBarCtrl::OnToolTipText(UINT uID, NMHDR* pNMHDR, LRESULT* pResult)
{
ASSERT(pNMHDR->code == TTN_NEEDTEXT);
TOOLTIPTEXT *pTTT = (TOOLTIPTEXT *)pNMHDR;
UINT nID = pNMHDR->idFrom;
if (nID >= ID_TBAR_START && nID <= ID_TBAR_END)
{
UINT uType;
if (m_idMap.Lookup((int)nID, uType))
{
CString str = m_pManage->GetTypePtr(uType)->strTitle;
strcpy(pTTT->lpszText, str.GetBuffer(str.GetLength()));
str.ReleaseBuffer();
//pTTT->hinst = AfxGetResourceHandle();
}
}
return FALSE;
}