标题:loadimage函数错误,数据类型不匹配
只看楼主
sam_jiang
Rank: 8Rank: 8
等 级:贵宾
威 望:10
帖 子:542
专家分:781
注 册:2021-10-13
结帖率:97.44%
已结贴  问题点数:20 回复次数:3 
loadimage函数错误,数据类型不匹配
用loadimage加载一个位图文件,微软说明上说第一个参数为null时,才可以加载指定图片。
函数原型:
HANDLE LoadImageA(
  [in, optional] HINSTANCE hInst,
  [in]           LPCSTR    name,
  [in]           UINT      type,
  [in]           int       cx,
  [in]           int       cy,
  [in]           UINT      fuLoad
);
参数
[in, optional] hInst

类型: HINSTANCE

DLL 或可执行文件 (.exe 模块的句柄) ,其中包含要加载的图像。 有关详细信息,请参阅 GetModuleHandle。 请注意,从 32 位 Windows 开始,实例句柄 (HINSTANCE) ,例如由 WinMain 系统函数调用公开的应用程序实例句柄,而模块句柄 (HMODULE) 也是如此。

若要加载 OEM 映像,请将此参数设置为 NULL。

若要加载独立资源 (图标、游标或位图文件) (例如,c:\myimage.bmp),请将此参数设置为 NULL。
问题来了,我把参数设置为null时,却产生一个错误提示,说数据类型不匹配。。。
代码如下:
DECLARE integer LoadImage IN WIN32API integer,string,integer,integer,integer,integer
hbitmap=loadimage(null,GETFILE("jpg;bmp;ico"),0,0,0,0x00000010)
?hbitmap

问题出在哪里?
搜索更多相关主题的帖子: integer 参数 null 函数 加载 
2023-04-09 13:31
csyx
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:29
帖 子:484
专家分:1827
注 册:2018-3-13
得分:20 
Int 的 null 对应 0,String 的 Null 才是 null
2023-04-09 13:39
sam_jiang
Rank: 8Rank: 8
等 级:贵宾
威 望:10
帖 子:542
专家分:781
注 册:2021-10-13
得分:0 
回复 2楼 csyx
我第二个参数里选择了一个jpg图片,所以第一个参数用0时函数返回值为0,失败,我以为我理解错了,所以以为第一个参数要用null,呵呵。

原来loadimage不能用jpg文件。。。

谢谢!
2023-04-09 14:01
csyx
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:29
帖 子:484
专家分:1827
注 册:2018-3-13
得分:0 
是的,这是个古老的函数,仅支持 bitmap,cursor,icon
2023-04-09 14:09



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-511842-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.120227 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved