win32窗口如何显示图片?Bitblt后显示不了?

呆神 2012-04-06 06:01:00
我在注册窗口时设置背景为一张图片:
HBITMAP hBmp=(HBITMAP)LoadBitmap(hInst,MAKEINTRESOURCE(IDB_BITMAP1));
HBRUSH g_hbrBackground=CreatePatternBrush(hBmp);
wcex.hbrBackground = g_hbrBackground;
...
现在还想在窗口中显示另外一张图片(在背景图片上面)
case WM_PAINT:
{
hdc = BeginPaint(hWnd, &ps);
BITMAP bitmap;
HBITMAP hBmps=(HBITMAP)LoadBitmap(hInst,MAKEINTRESOURCE(IDB_BITMAP2));
GetObject(hBmps,sizeof(BITMAP),&bitmap);
HDC hdcMem=CreateCompatibleDC (hdc);
SelectObject(hdcMem, hBmps);
BitBlt (hdc, 0, 0, bitmap.bmWidth, bitmap.bmHeight, hdcMem, 0, 0, SRCCOPY) ;
DeleteDC(hdcMem);
EndPaint(hWnd, &ps);
}
只显示背景图片,没有显示载入的另外一张图片??
...全文
192 点赞 收藏 2
写回复
2 条回复
呆神 2012年04月09日
咳 解决了 自己疏忽了 引用同一个句柄 上面的代码是可以的
回复 点赞
发动态
发帖子
图形处理/算法
创建于2007-09-28

7617

社区成员

5.0w+

社区内容

VC/MFC 图形处理/算法
社区公告
暂无公告