我为工具条生成一个按钮
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();
现在,我想在程序中改变此按钮的提示,怎么做?

解决方案 »

  1.   

    BEGIN_MESSAGE_MAP(CTypeBarCtrl, CToolBar)
    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;
    }
      

  2.   

    http://www.vccode.com/file_show.php?id=2607