我试图加载位图我用的功能按钮SetImage从CMFCButton。我没有收到任何错误或其他东西,只是一个简单的按钮。我正在做同样的事情icons并且它可以工作,但我也需要加载它bitmap。我需要LoadImage从路径而不是从资源。
这是我的代码:
iconResource = path + m_type + _T("U") + extension; //i.e : C:\test\earthU.bmp
HANDLE hIcon = ::LoadImage(nullptr, iconResource, IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
//same thing for Hot and Disable bitmap
Run Code Online (Sandbox Code Playgroud)
以及对SetImage函数的调用:
SetImage((HBITMAP)hIcon, 0, (HBITMAP)hIconHot, 0 , (HBITMAP)hIconDis);
Run Code Online (Sandbox Code Playgroud)
LR_CREATEDIBSECTION|LR_LOADFROMFILE加载位图文件时使用标志CMFCButton
::LoadImage(nullptr, bitmapfile, IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION|LR_LOADFROMFILE);
Run Code Online (Sandbox Code Playgroud)
部分解释:
CMFCButton( )的 MFC 源代码"afxbutton.cpp"显示它添加了LR_CREATEDIBSECTIONfor LoadImage。这没有记录,也不清楚为什么需要这样做。LR_CREATEDIBSECTION当源位图不是 32 位时似乎需要它。
| 归档时间: |
|
| 查看次数: |
609 次 |
| 最近记录: |