You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MFC中使用透明PNG作为菜单项图标的问题求助

问题

我被指引查看Stack Overflow上的一则现有回答,但没法理解其中的代码。我自己写了如下代码:

CPngImage png;
png.Load(IDB_PNG_MENU_REPORT, AfxGetResourceHandle());
m_bmp.Attach(png.Detach());

//CBitmap png = (HBITMAP)LoadImage(AfxGetResourceHandle(), MAKEINTRESOURCE(IDB_PNG_MENU_REPORT),
//  IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION);

auto pMenu = GetMenu();
if (pMenu)
{
    pMenu->SetMenuItemBitmaps(ID_MANAGE_CONGREGATIONS_REPORT_VIEWER, MF_BYCOMMAND, &m_bmp, &m_bmp);
}

运行后得到的效果如下:
菜单显示效果

我的实现没能正常工作,PNG的透明区域变成了白色:
PNG透明区域变为白色

我不知道该怎么用原回答里提到的代码,希望能得到解决方法。


内容的提问来源于stack exchange,提问作者Andrew Truckle

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 06:03:14