动态改变工具栏上某个按钮的表面颜色
为了动态改变工具栏上某按钮的表面颜色,本人采用定制作图,在放工具栏的窗口中响应消息NM_CUSTOMDRAW,并在OnCustomToolbarDraw函数中设置其按钮的颜色,但不成功,对Windows的定制作图过程又不了解,不知是哪里出问题了,请各位高手帮帮忙,我的代码如下
void CMainFrame :: OnCustomToolbarDraw( NMHDR * pNotify, LRESULT * pResult )
{
LPNMTBCUSTOMDRAW pbutton = (LPNMTBCUSTOMDRAW)pNotify;
*pResult = CDRF_NOTIFYITEMDRAW |
CDRF_NOTIFYPOSTPAINT |
CDRF_NOTIFYPOSTERASE;
if (pbutton->nmcd.dwDrawStage & CDDS_ITEM)
{
switch( pbutton->nmcd.dwItemSpec)
{
case ID_FILE_NEW:
pbutton->clrBtnFace = RGB(0,0,255);
break;
default:
break;
}
}
}