LoadImage函数是Windows API中的一个函数,用于加载图像资源。
LoadImage函数的参数及其用法如下:
hInst(HINSTANCE类型):指定包含图像资源的模块的句柄。通常使用GetModuleHandle(NULL)获取当前应用程序的句柄。
lpszName(LPCTSTR类型):指定图像资源的名称。可以是一个整数资源ID(如MAKEINTRESOURCE(IDB_BITMAP1)),也可以是一个指向包含资源名称的字符串的指针。
uType(UINT类型):指定图像资源的类型。可以是下列值之一:
cxDesired(int类型):指定加载后图像的宽度。如果为0,则加载原始图像大小。
cyDesired(int类型):指定加载后图像的高度。如果为0,则加载原始图像大小。
fuLoad(UINT类型):指定加载图像的方式。可以是下列值之一:
返回值(HANDLE类型):如果加载成功,返回一个有效的句柄;如果加载失败,返回NULL。
调用LoadImage函数后,可以使用返回的句柄进行后续的操作,如绘制到设备上或设置为控件的图像等。
示例代码如下:
HINSTANCE hInst = GetModuleHandle(NULL);
HBITMAP hBitmap = (HBITMAP)LoadImage(hInst, MAKEINTRESOURCE(IDB_BITMAP1), IMAGE_BITMAP, 0, 0, LR_DEFAULTCOLOR);
if (hBitmap != NULL)
{
// 在设备上绘制图像
HDC hdc = GetDC(hwnd);
HDC hdcMem = CreateCompatibleDC(hdc);
SelectObject(hdcMem, hBitmap);
BitBlt(hdc, 0, 0, cx, cy, hdcMem, 0, 0, SRCCOPY);
// 释放资源
DeleteDC(hdcMem);
ReleaseDC(hwnd, hdc);
DeleteObject(hBitmap);
}
上述示例代码中,加载位图资源IDB_BITMAP1后,将其绘制到hwnd句柄对应的窗口设备上。在绘制完成后,需要释放相关资源,包括设备上下文(hdcMem和hdc)和位图对象(hBitmap)。