1.在ResourceView裡加入Toolbar資源,命名IDR_TOOLBAR1
2、在主程序的.h文件中加入變量:
CToolBar m_toolbar;CImageList img;
3、在主程序中.h文件中的BEGIN_MESSAGE_MAP(CDetectorDlg,CDialog)函數中加入:
ON_NOTIFY_EX( TTN_NEEDTEXT,0,OnToolTipText)
BOOL CDormDlg::OnToolTipText(UINT, NMHDR *pTTTStruct, LRESULT *pResult)
{
ASSERT(pTTTStruct->code == TTN_NEEDTEXTA || pTTTStruct->code == TTN_NEEDTEXTW);
TOOLTIPTEXTA *pTTA=(TOOLTIPTEXT*)pTTTStruct;
TOOLTIPTEXTW *pTTW=(TOOLTIPTEXTW*)pTTTStruct;
CString strTipText,strStatus;
UINT nID = pTTTStruct->idFrom;
(pTTTStruct->code == TTN_NEEDTEXTA &&(pTTA->uFlags & TTF_IDISHWND) ||
pTTTStruct->code ==TTN_NEEDTEXTW &&(pTTW->uFlags & TTF_IDISHWND))
{
nID = ::GetDlgCtrlID((HWND)nID);
}
(nID != 0)
{
strTipText.LoadString(nID);
strTipText = strTipText.Mid(strTipText.Find(_T(),0)+1);
_UNICODE
(pTTTStruct->code == TTN_NEEDTEXTA)
{
lstrcpyn(pTTA->szText,strTipText,(pTTA->szText));
m_bar.SetPaneText(0,pTTA->szText);
}
{
_mbstowcsz(pTTW->szText,strTipText,(pTTW->szText));
}
(pTTTStruct->code == TTN_NEEDTEXTA)
{
_wcstombsz(pTTA->szText,strTipText,(pTTA->szText)) ;
m_bar.SetPaneText(0,pTTA->szText);
}
{
lstrcpyn(pTTW->szText,strTipText,(pTTW->szText));
m_bar.SetPaneText(0,);
}
*pResult = 0;
::SetWindowPos(pTTTStruct->hwndFrom,HWND_TOP,0,0,0,0,SWP_NOACTIVATE |
SWP_NOSIZE |SWP_NOMOVE |SWP_NOOWNERZORDER);
;
}
;
}
6.在ResourceView的String資源裡,將工具欄中每個按鈕的ID都對應上希望顯示的提示信息即可
7、效果圖