本节视频对前几节全局鼠标和全局键盘钩子的一个综合实践,来编译一个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
所属分类: 编程
相关文章:
▪ 创建进程暂停调用模块和DLL2020-05-02
▪ C#cSharp windows窗体属性方法事件2021-06-11
▪ 汇编语言[bx+si+idata]和[bx+di+idata]2021-01-13
▪ 易语言防止组合框重复添加项目的三种方法2019-08-02
▪ 易语言教程数组变量2017-07-30
▪ 乐玩插件多线程模块(索引)--方法32019-07-29
▪ 汇编语言编写供应用程序调用的中断例程2021-01-24
▪ 汇编语言实验13编写、应用中断例程2021-02-05
▪ 汇编语言伪指令dd2021-01-15
▪ 易语言 API之文件处理函数2017-05-06