- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
十天学会易语言易语言教程第章API函数的应用.doc
+
10.1 如何定义API函数
10.2 API函数的综合应用
10.3 外部DLL库的应用
10.4 课后练习
208
209
定义DLL库中对应的命令名。按照API资料中填写,不可以自定义。
定义DLL库文件名。按照API资料中填写,不可以自定义。
⑤新建一个整数型的变量。
⑥双击按钮,在_按钮1_被单击的子程序下输入代码:
列表框1.清空 ()
hWnd = 取子窗口句柄 (0, 0, 0, 0)
.判断循环首 (hWnd ≠ 0)
列表框1.加入项目 (到文本 (hWnd), )
hWnd = 取子窗口句柄 (0, hWnd, 0, 0)
.判断循环尾 ()
从API的帮助文件里可以查出User32是DLL库文件名,FindWindowExA是库命令名。
这里有四个参数的类型与说明。
API资料中描述的,有几个参数,就添加几个参数,并且参数的类型要和资料中的符合,参数名可以自定义。
定义DLL命令在易语言中使用的命令名,可以随意定义,最好是定义一个方便识别的命令名
④新建一个DLL命令。
②定义默认DLL库中的命令。
提示:
GetMessagePos:模拟鼠标移动;
keybd_event:模拟键盘按下。
在_启动窗口中新建两个按钮,分别双击按钮组件,以进入被单击事件子程序,并输入程序代码。
最后按“F5键”试运行,看看效果。
这里是DLL声明,分别声明模拟键盘与模拟鼠标移动的两个DLL命令。
(2)使用简单的API,制作一个模拟键盘按下[Win+D],和模拟鼠标移动的程序。
(1)学着使用API函数的帮助文档:
试运行程序,然后在窗体上移动鼠标,就可以看到逼真的水纹效果了。
⑧在启动窗口的事件选择框中选择“鼠标位置被移动”选项,产生了“_启动窗口_鼠标位置被移动”子程序,然后在子程序下输入代码:
WaterMouseAction (GetDC (_启动窗口.取窗口句柄 ()), 0, 0, 横向位置, 纵向位置, 5, 100)
⑦将子程序的返回值设置成“逻辑型”。
⑥双击时钟组件,产生“_时钟1_周期事件”子程序,子程序下输入代码:
WaterTimer (GetDC (_启动窗口.取窗口句柄 ()), 0, 0)
⑤在_启动窗口_创建完毕的子程序中输入代码:
时钟1.时钟周期 = 10
bitmap = LoadImage (0, 取运行目录 () + “\例图01.bmp”, 0, 0, 0, #LR_LOADFROMFILE)
WaterInit (bitmap)
16是#LR_LOADREALSIZE的常量值,使用常量查询工具查出。
④双击_启动窗口产生了“_启动窗口_创建完毕“的子程序,并新建一个整数型的变量“bitmap”。用来存放LoadImage命令的返回值。
命令中各参数可以照书中填写,各参数的作用,可以编写完程序后,更改参数的值,进行调试,就可以了解命令中的各个参数了。
由于是外部DLL库,所以,DLL库文件名要填写清楚。
③定义外部DLL库中的命令。
本例程要用到2个默认DLL库中的命令,和3个外部DLL库中的命令。
2个user32.dll中的命令:
GetDC:获取指定窗口的设备场景
LoadImage:载入一个位图、图标或指针
3个WaterDll.dll中的命令(外部DLL 库):
外部DLL库中的命令使用方法,参见外部DLL库自带的帮助文档,没有帮助文档也可参见例程,或在实际使用的时候给命令参数不同的值看看出现的效果,自己理解DLL库中命令的作用。
注意:
该例程要使用到一个外部的DLL库,所以,在编写程序前,先从随书光盘中将WaterDll.dll文件拷贝到本地机器上,并一同将随书光盘中的“例图01.bmp”拷贝到程序保存到的目录下。
①新建一个易程序,然后,添加一个时钟组件。
前2节都是介绍基本 Windows API 库文件
运行程序,然后拖动滑块条,可以看到,窗体渐渐变的透明,直到完全透明。
⑦在子程序下输入代码:
SetLayeredWindowAttributes (_启动窗口.取窗口句柄 (), 0, 滑块条1.位置, #LWA_ALPHA)
⑥在滑块条的事件列表中选择“位置被改变”事件,产生“_滑块条1_位置被改变”子程序。
⑤在子程序下输入代码:
Ret = GetWindowLong (取窗口句柄 (), -20)
Ret = 位或 (Ret, 524288)
SetWindowLong (取窗口句柄 (), -20, Ret)
SetLayeredWindowAttributes (_启动窗口.取窗口句柄 (), 0, 255, #LWA_ALPHA)
④双击_启动窗口,产生_启动窗口_创建完毕
文档评论(0)