[转载]MFC为菜单添加图标

原文地址:MFC为菜单添加图标作者:cent

一般的方法(不适用与PNG):
一、单文档的菜单图标实现:
1、新建一个位图资源,大小为13*13,假设ID为IDB_BITMAP1,画好图标
2、在CMainFrame中添加成员变量:CBitmap bitmap
3、在CMainFrame的OnCreate中加入:
bitmap.LoadBitmap(IDB_BITMAP1);
GetMenu()->GetSubMenu(0)->SetMenuItemBitmaps(0,MF_BYPOSITION, &bitmap, &bitmap);//具体哪个菜单项为图标,可自己设定
4、编译,实现图标菜单。

二、多文档的菜单图标实现:
1、新建一个位图资源,大小为13*13,假设ID为IDB_BITMAP1,画好图标
2、在CMaoyeah_comDoc(你程序中的CDocument子类)中添加成员变量:CBitmap bitmap
3、在CMaoyeah_comDoc的OnNewDocument中加入:
bitmap.LoadBitmap(IDB_BITMAP1);
CMenu *pMenu;
pMenu = CMenu::FromHandle(((CMultiDocTemplate *)m_pDocTemplate)->m_hMenuShared);
CMenu *pSubMenu = pMenu->GetSubMenu(0);
pSubMenu->SetMenuItemBitmaps(0,MF_BYPOSITION, &bitmap, &bitmap);
4、编译,实现图标菜单。

方法一已确认可以用在对话框程序的弹出菜单中,暂时不确定是否能用于工具栏菜单

posted on 2013-01-29 09:46  龙猫先生  阅读(1112)  评论(0编辑  收藏  举报

导航