LoadImage是什么?

LoadImage是什么?,第1张

函数功能:该函数装载目标,光标,或位图。函数原型:HANDLE LoadImage(HINSTANCE hinst,LPCTSTR lpszName,UINT uType,int cxDesired,int CyDesired,UINT fuLoad);参数:hinst:处理包含被装载图像模块的特例。若要装载OEM图像,则设此参数值为NULL。lpszName:处理图像装载。如果参数hinst为非空,而且参数fuLoad不包括LR_LOADFROMFILE的值时,那么参数lpszName是一个指向保留在hinst模块中装载的图像资源名称,并以NULL为结束符的字符串。如果参数hinst为空,并且LR_LOADFROMFILE被指定,那么这个参数低位字一定是被装载的OEM图像标识的。OEM图像标识符是在WINUSER.H头文件中定义的,下面列举出前缀的含义:OBM_ OEM:位图;OIC_OEM图标;OCR_OEM:光标。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部分位图,而不是一个兼容的位图。这个标志在装载一个位图,而不是映射它的颜色到显示设备时非常有用。LRDIFAULTSIZE:若 cxDesired或cyDesired未被设为零,使用系统指定的公制值标识光标或图标的宽和高。如果这个参数不被设置且cxDesired或cyDesired被设为零,函数使用实际资源尺寸。如果资源包含多个图像,则使用第一个图像的大小。LR_LOADFROMFILE:根据参数lpszName的值装载图像。若标记未被给定,lpszName的值为资源名称。LW_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当过程创建终止时,系统将自动删除这些资源。但是调用相关函数也可以保留内存减少过程的工作设置所占空间。Windows CE:对IMAGE_BITMAP来说,参数cxDesred和cyDesred p必须为零。Windows CE不支持图表跳跃或闪烁。参数fuLoad必须为(=LR_DEFAULTCOLOR)。如果的目标平台不支持鼠标光标,可以指定在参数cxDesred和cyDsired的SM_CXCURSOR和SM_CYCURSOR的值,但不能指定参数uType中IMAGE_CURSOR的值。如果目标平台支持鼠标光标,可以指定在参数cxDesired和cyDesred的SM_CXCURSOR和SM_CYCURSOR的值,也能指定参数uType中IMAGE_CURSOR的值。

1、如果有图片(例如 wzzx.jpg) 程序中型做插一句:

system("mspaint wzzx.jpg") 就可以 在运行时显示这张图片。

用字符串变量调用也可以:

char pic_name[80]="wzzx.jpg"

char cmd[100]

sprintf(cmd,"mspaint %s",pic_name)

system(cmd) // 显示图片

2、system函数:

原型:int system(const char * command);

功能:执行 dos(windows系统) 或 shell(Linux/Unix系统) 命令,参数字符串command为命令名

说明:在windows系统中,system函数直接在控制台调用一个command命令。在Linux/Unix系统中,system函数会调用fork函数产衫知生子进程,由子进程来执行command命令,命令执行完后随即返回原调用或租消的进程;

头文件:stdlib.h;

返回值:命令执行成功返回0,执行失败返回-1。

1 loadImage第二个参数直接写位图的路径/名字即可;

2 background.bmp放在你这个宽粗工程的第一层文件夹下;

3 资源文件,就是放你需要的资源,在visual studio里点开(solution explorer窗口的)工程,下面会有三个文件夹:header files(头文件.h)、source files(.cpp)、resource files(资源文件就扔这里了);你工程中要用到的图片都是资源文件,要添加的话,右击添加。

ps,这是loadImage的参数列表

hinstance hinst包含被装在图像模块的特例

lpctstr lpszName 图像资源装载

uint uType 被装在图像类型

int cxDesired 指定图标、光标宽度(这是在上面uint取IMAGE_CURSOR、IMAGE_ICON时才会用到,位图没用)

int cyDesired 指定图标、光标高度慎芹镇(同上)

uint fuLoad 含义丰富、由赋值首携决定

你可以百度百科一下loadImage,讲的很清楚的


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12231027.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存