本节视频对前几节全局鼠标和全局键盘钩子的一个综合实践,来编译一个WINdows的屏保程序,因为要输入密码,我们屏蔽了除了数字键的其他键代码,当触发鼠标左键时,弹出密码输入框,采用了画板组件,时钟组件。
画板输入框界面初始化源码:
.版本 2 时钟1.时钟周期 = 1 宽度 = 取屏幕宽度 () 高度 = 取屏幕高度 () 左边 = 0 顶边 = 0 边框 = 0 位置 = 0 总在最前 = 真 画板1.左边 = 0 画板1.顶边 = 0 画板1.宽度 = 取屏幕宽度 () 画板1.高度 = 取屏幕高度 () 编辑框1.左边 = 取屏幕宽度 () ÷ 2 - 144 编辑框1.顶边 = 取屏幕高度 () ÷ 2 按钮1.左边 = 取屏幕宽度 () ÷ 2 按钮1.顶边 = 取屏幕高度 () ÷ 2
安装鼠标和键盘钩子
.版本 2 键盘钩子 = SetWindowsHookExA (13, &键盘回调, GetModuleHandleA (0), 0) 鼠标钩子 = SetWindowsHookExA (14, &鼠标钩子回调, GetModuleHandleA (0), 0)
键盘钩子回调函数
.版本 2 .子程序 键盘回调, 整数型 .参数 参数一, 整数型 .参数 参数二, 整数型 .参数 参数三, 整数型 .局部变量 键值, 整数型 键值 = 取字节集数据 (指针到字节集 (参数三, 1), 3, ) .判断开始 (键值 ≥ 48 且 键值 ≤ 57) 返回 (0) .默认 返回 (1) .判断结束 返回 (CallNextHookEx (键盘钩子, 参数一, 参数二, 参数三))
鼠标钩子回调函数
.版本 2 .子程序 键盘回调, 整数型 .参数 参数一, 整数型 .参数 参数二, 整数型 .参数 参数三, 整数型 .局部变量 键值, 整数型 键值 = 取字节集数据 (指针到字节集 (参数三, 1), 3, ) .判断开始 (键值 ≥ 48 且 键值 ≤ 57) 返回 (0) .默认 返回 (1) .判断结束 返回 (CallNextHookEx (键盘钩子, 参数一, 参数二, 参数三))
时钟周期事件,完成星空效果
.版本 2 .子程序 _时钟1_周期事件 .局部变量 color .局部变量 x .局部变量 y 置随机数种子 () color = 取颜色值 (取随机数 (0, ), 取随机数 (0, ), 取随机数 (0, )) x = 取随机数 (0, 画板1.宽度) y = 取随机数 (0, 画板1.高度) 画板1.画点 (x, y, color)
密码验证
.版本 2 .子程序 _按钮1_被单击 .判断开始 (编辑框1.内容 = “123456”) 销毁 () 结束 ()
百度网盘链接:https://pan.baidu.com/s/158ikKVjIwaoF4438MG4fhA
提取码:加QQ群:521068947 群文件下载
资源教程交流①群:521068947
所属分类: 易语言
相关文章:
▪ 易语言大漠单线程模块制作系统字库设置行高列高2018-03-03
▪ 第20课易语言大漠多字库调用时时显示坐标等级2017-05-05
▪ 易语言多线程大漠多线程-35大漠多线程模板-5多线程启动2019-03-23
▪ LUA教程完整示例Lua作为数据描述语言使用-392018-02-25
▪ 第一课 511遇见大漠模块教程创建模块2017-03-29
▪ 第14课 易语言汇编Call动态调用dll及子程序2019-05-12
▪ 易语言大漠单线程-《剑侠情缘》一键登陆2019-06-14
▪ 第五课 511遇见易语言大漠找字FindStrE系列2017-03-23
▪ 大漠插件大漠本人录制基础必看教程2019-03-26
▪ 易语言演示线程鼠标钩子和全局鼠标钩子的区别作用2019-08-17