菜鸟问题:关于菜单创建中的 CBitmap 参数

xqk 2003-08-25 05:26:56
请问大家,我建立了一个CImageList 类!

也为CImageList 加了很多 HICON !

但是我怎样将这些图标添加到动态菜单中呢?
菜单中的最后这个参数是 const CBitmap *pBmp
...全文
93 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xqk 2003-08-29
  • 打赏
  • 举报
回复
IMAGEINFO image;
m_image.GetImageInfo(1,&image);

CBitmap *pbmp = CBitmap::FromHandle(image.hbmImage);

if(text.GetAt(1)!=':') //判断路径错误
{
m_PopMenu.AppendMenu(MF_STRING|MF_POPUP,nID,text);
}
m_PopMenu.SetMenuItemBitmaps(nID,MF_BYCOMMAND,pbmp,pbmp); //GetLastError号87,请大家帮我看看哪里有问题?
xqk 2003-08-26
  • 打赏
  • 举报
回复
IMAGEINFO image;
m_image.GetImageInfo(1,&image);


m_PopMenu.AppendMenu(MF_STRING|MF_POPUP,(UINT)CreateMenu(),text);

m_PopMenu.SetMenuItemBitmaps(NULL, MF_STRING|MF_POPUP,&image.hbmImage, &image)); //请问这个函数怎么添?怎么做? 怎样从HBITMAP转成CBITMAP
tonybaobao 2003-08-26
  • 打赏
  • 举报
回复
不能这样放的吧?应该是用SetMenuItemBitmaps()
xqk 2003-08-26
  • 打赏
  • 举报
回复
image.hbmImage

怎样放到
m_PopMenu.AppendMenu(MF_STRING|MF_POPUP,(UINT)CreateMenu(),hbnImage);

会出现错误的啊
zhouyong0371 2003-08-25
  • 打赏
  • 举报
回复
IMAGEINFO


Contains information about an image in an image list. This structure is used with the ImageList_GetImageInfo function.

typedef struct _IMAGEINFO {
HBITMAP hbmImage;
HBITMAP hbmMask;
int Unused1;
int Unused2;
RECT rcImage;
} IMAGEINFO, FAR *LPIMAGEINFO;

zhouyong0371 2003-08-25
  • 打赏
  • 举报
回复
CImageList::GetImageInfo
BOOL GetImageInfo( int nImage, IMAGEINFO* pImageInfo ) const;

Return Value

Nonzero if successful; otherwise 0.

Parameters

nImage

Zero-based index of the image.

pImageInfo

Pointer to anIMAGEINFO structure that receives information about the image. The information in this structure can be used to directly manipulate the bitmaps for the image.

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧