case WM_CREATE:
{
hIn = (((LPCREATESTRUCT)lParam))->hInstance;
hBitmap = LoadBitmap(hIn, MAKEINTRESOURCE(IDB_BITMAP1)); // 载入位图
GetObject(hBitmap,sizeof(BITMAP),&bitmap);//用位图填充结构体
cxSource = bitmap.bmWidth;//得到位图大小
cySource = bitmap.bmHeight;
hIcon = LoadIcon(hIn, MAKEINTRESOURCE(IDI_ICON1));//载入光标位图
return 0;
}
case WM_PAINT:
{
hdc = BeginPaint(hwnd,&ps);
hdcMem = CreateCompatibleDC(hdc);
SelectObject(hdcMem, hBitmap);
BitBlt(hdc,0,0,cxSource,cySource, hdcMem,0,0, SRCCOPY);
DrawIcon(hdc, X,Y,, hIcon); //光标位图
DeleteDC(hdcMem);
EndPaint(hwnd,&ps);
return 0;
}
本文介绍了在Windows应用程序中如何加载位图和图标资源,并在窗口上进行绘制的过程。包括使用`LoadBitmap`和`LoadIcon`函数加载资源,通过`GetObject`获取位图属性,以及利用`BeginPaint`, `CreateCompatibleDC`, `SelectObject`, `BitBlt`和`DrawIcon`等API完成绘图。
882

被折叠的 条评论
为什么被折叠?



