.h文件中:
CMenu mMenuConfig;
CBrush mMenuBrush;
if (!mMenuConfig.m_hMenu)
{
mMenuConfig.CreatePopupMenu();
mMenuConfig.AppendMenu(MF_STRING,ID_MENU_MORE_CONFIG, _T("设置"));
mMenuConfig.AppendMenu(MF_STRING,ID_MENU_MORE_UPGRADE, _T("更新"));
mMenuConfig.AppendMenu(MF_STRING,ID_MENU_MORE_ABOUT, _T("关于"));
mMenuBrush.CreateSolidBrush(RGB(240,240,0));//RGB(255,128,128));
MENUINFO mi;
mi.cbSize=sizeof(MENUINFO);
mi.fMask=MIM_BACKGROUND;
mi.hbrBack=(HBRUSH)mMenuBrush;
SetMenuInfo((HMENU)(mMenuConfig.m_hMenu),&mi);
CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAP_CONFIG);//IDB_BITMAP_CONFIG为导入工程中的bmp图片的id;
mMenuConfig.SetMenuItemBitmaps(ID_MENU_MORE_CONFIG, MF_BYCOMMAND, bmp, bmp);//此处常态和高亮显示为一样;
bmp.Detach();//必须Detach,否则图标不显示
DeleteObject(mMenuBrush);
}
(WTL8.0,MFC中类似)