MFC API——》LoadImage

函数功能:该函数装载图标,光标,或位图。

函数原型:HANDLE LoadImage(HINSTANCE hinst,LPCTSTR lpszName,UINT uType,int cxDesired,int cyDesired,UINT fuLoad);

hinst:处理包含被装载图像模块的实例。若要装载OEM图像,则设此参数值为0。
 
lpszName:处理图像装载。如果参数hinst为non-NULL而且参数fuLoad省略LR_LOADFROMFILE的值时,那么参数lpszName是一个指向保留在hinst模块中装载的图像资源名称,并以NULL为结束符的字符串。
 
如果参数hinst为空并且LR_LOADFROMFILE未被指定,那么这个参数低位字一定是被装载的OEM图像标识的。OEM图像 标识符 是在WINUSER.H头文件中定义的,下面列举出前缀的含义:
 
OBM_ OEM: 位图
 
OIC_OEM     图标;
 
OCR_OEM:光标。
 
如果参数fuLoad包含LR_LOADFROMFILE值,那么参数lpszName是包含有图像的文件名。
 
 
uType:指定被装载图像类型。此参数可以为下列值,其含义如下:
 
IMAGE_BITMAP:装载位图;
 
IMAGE_CURSOR:装载光标;
 
IMAGE_ICON:装载图标。
 
cxDesired:指定图标或光标宽度,以像素为单位。如果此参数为零并且参数fuLoad值为LR_DEFAULTSIZE,那么函数使用SM_CXICON或SM_CXCURSOR系统公制值设定宽度;如果此参数为零并且值LR_DEFAULTSIZE没有被使用,那么函数使用目前的资源宽度。
 
cyDesired:指定图标或光标高度,以像素为单位。如果此参数为零并且参数fuLoad值为LR_DEFAULTSIZE,那么函数使用SM_CXICON或SM_CXCURSOR系统公制值设定高度;如果此参数为零并且值LR_DEFAULTSIZE没有被使用,那么函数使用目前的资源高度。
 
fuLoad:根据下面复合值列表指定函数值,值含义如下:
 
LR_DEFAULTCOLOR:缺省标志;它不作任何事情。它的含义是“无LR_MONOCHROME”。
 
LR_CREATEDIBSECTION:当参数uType指定为IMAGE_BITMAP时,使得函数返回一个DIB部分位图,而不是一个兼容的位图。这个标志在装载一个位图,而不是映射它的颜色到显示设备时非常有用。
 
LR_DEFAULTSIZE:若 cxDesired或cyDesired被设为零,使用系统指定的公制值标识光标或图标的宽和高。如果这个参数不被设置cxDesired或cyDesired被设为零,函数使用实际资源尺寸。如果资源包含多个 图像 ,则使用第一个图像的大小。
 
LR_LOADFROMFILE:根据参数lpszName的值装载图像。若标记未被给定,lpszName的值为资源名称
 
LR_LOADMAP3DCOLORS:查找图像的颜色表并且按下面相应的3D颜色表的灰度进行替换。
 
颜色替代:
Dk Gray RGB(128,128,128) COLOR_3DSHADOW;
 
Gray RGB(192,192,192) COLOR_3DFACELt
 
Gray RGB(223,223,223) COLOR_3DLIGHT LR_LOADTRANSPARENT;
 
找到图像中的一个像素颜色值并且根据颜色表中系统的缺省颜色值替代其相应接口的值。
图像 中所有使用这种接口的像素的颜色都变为系统的缺省 窗体 颜色。此至仅用来申请相应的颜色表。
 
若fuLoad包括LR_LOADTRANSPARENT和LR_LOADMAP3DCOLORS两个值,则LRLOADTRANSPARENT优先。但是,颜色表接口由COLOR_3DFACE替代,而不是COLOR_WINDOW。
 
LR_MONOCHROME:装载黑白图
 
LR_SHARED:若图像将被多次装载则共享。如果LR_SHARED未被设置,则再向同一个资源第二次调用这个图像时就会再装载一遍这个图像且返回不同的句柄。
 
不要对不同标准尺寸的 图像 使用LR_SHARED,装载后可能会有改变,或是从文件中被装载。
Windows 95和Windows 98:函数根据 缓存 中被请求的资源名发现的第一个图像,不管被请求的大小。LR_VGACOLOR:使用VGA 真彩色
 
返回值:如果函数运行成功,返回值是相关资源的数据的句柄。如果函数运行失败,返回值为NULL。若想获得更多的 错误信息 ,请调用GetLastError函数。
 
注意:当使用完资源后,必须通过调用函数以释放加速器表 位图 光标 、图标以及 菜单 所占的内存资源;
 
加速器表:DesteoyAcceleratorTable;
 
位图:DeleteObject
 
光标:DestroyCursor
 
图标:Destroylcon
 
菜单:DestroyMenu
 
当过程创建终止时,系统将自动删除这些资源。但是调用相关函数也可以保留内存减少过程的工作设置所占空间。
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值