鼠标点击器

文章正文
发布时间:2025-10-16 07:08

本帖最后由 charis 于 2025-7-6 20:51 编辑

前段时间想找一个符合自我要求的鼠标点击器,好多功能太复杂了,就自己动手写了个,只实现了基本功能,并不完善,要求高的,请自行完善(未添加脚本验证等),也可能存在一定BUG,也不打算改进了。
成品文件下载地址:https://wwza.lanzouo.com/iQuQu30f4rje密码:d927
源码文件下载地址:https://wwza.lanzouo.com/iKD0f30f4rte密码:g3gs




2025.7.6看到评论区需要循环,增加了循环功能,因可能出现BUG,故未添加死循环的功能,有需求的请自取!


[Asm] 纯文本查看 复制代码

.版本 2 .版本 2 .支持库 shellEx .支持库 iext .支持库 spec .支持库 eAPI .程序集 窗口程序集_启动窗口 .程序集变量 hqwz, 整数型, , , 热键 .程序集变量 tjdj, 整数型, , , 热键 .程序集变量 tjyj, 整数型, , , 热键 .程序集变量 ksyx, 整数型, , , 热键 .程序集变量 tzyx, 整数型, , , 热键 .程序集变量 bcjb, 整数型, , , 热键 .程序集变量 ckjb, 整数型, , , 窗口句柄 .程序集变量 bqjb, 整数型, , , 标签句柄 .程序集变量 tzxh, 逻辑型, , , 停止信号 .程序集变量 sfks, 逻辑型, , , 是否开始 .子程序 __启动窗口_创建完毕 ckjb = _启动窗口.取窗口句柄 () bqjb = 提示标签.取窗口句柄 () hqwz = 注册热键 (ckjb, bqjb, 0, #F1键) tjdj = 注册热键 (ckjb, bqjb, 0, #F2键) tjyj = 注册热键 (ckjb, bqjb, 0, #F3键) ksyx = 注册热键 (ckjb, bqjb, 0, #F4键) tzyx = 注册热键 (ckjb, bqjb, 0, #F5键) bcjb = 注册热键 (ckjb, bqjb, 0, #F6键) tzxh = 假 sfks = 假 状态条1.置文本 (0, “程序启动完成!”) .子程序 _提示标签_反馈事件, 整数型 .参数 参数一, 整数型 .参数 参数二, 整数型 .局部变量 线程句柄, 整数型 .判断开始 (参数一 = hqwz) 脚本编辑框.加入文本 (获取当前位置 () + #换行符 + “ys,” + 延时编辑框.内容 + “” + #换行符) .判断 (参数一 = tjdj) 脚本编辑框.加入文本 (“sbdj” + #换行符 + “ys,” + 延时编辑框.内容 + “” + #换行符) .判断 (参数一 = tjyj) 脚本编辑框.加入文本 (“sbyj” + #换行符 + “ys,” + 延时编辑框.内容 + “” + #换行符) .判断 (参数一 = ksyx 且 sfks = 假) _开始运行按钮_被单击 () tzxh = 假 .判断 (参数一 = tzyx 且 sfks = 真) _停止运行按钮_被单击 () .判断 (参数一 = bcjb) 保存脚本 () .默认 .判断结束 .子程序 开始运行 执行脚本 (脚本编辑框.内容) .子程序 停止运行 tzxh = 真 状态条1.置文本 (0, “已停止运行”) .子程序 保存脚本 保存通用对话框.初始目录 = 取运行目录 () 保存通用对话框.打开 () 写到文件 (保存通用对话框.文件名, 到字节集 (脚本编辑框.内容)) .子程序 获取当前位置, 文本型 返回 (“yd,” + 到文本 (取鼠标水平位置 ()) + “.” + 到文本 (取鼠标垂直位置 ()) + “”) .子程序 __启动窗口_将被销毁 撤销热键 (ckjb, bqjb) .子程序 _获取位置按钮_被单击 脚本编辑框.加入文本 (获取当前位置 () + #换行符 + “ys,” + 延时编辑框.内容 + “” + #换行符) .子程序 _添加单击按钮_被单击 脚本编辑框.加入文本 (“sbdj” + #换行符 + “ys,” + 延时编辑框.内容 + “” + #换行符) .子程序 _添加右击按钮_被单击 脚本编辑框.加入文本 (“sbyj” + #换行符 + “ys,” + 延时编辑框.内容 + “” + #换行符) .子程序 执行脚本 .参数 脚本内容, 文本型 .局部变量 执行进度, 整数型 .局部变量 代码数组, 文本型, , "0" .局部变量 指令, 文本型, , "0" .局部变量 当前行, 文本型 .局部变量 X, 整数型 .局部变量 tmp, 文本型, , "0" .局部变量 Y, 整数型 .局部变量 循环次数, 整数型 .局部变量 n, 整数型 .如果 (到整数 (循环次数编辑框.内容) = 0) tzxh = 假 sfks = 真 状态条1.置文本 (0, “正在单次运行中”) 代码数组 = 分割文本 (删全部空 (脚本内容), #换行符, ) .计次循环首 (取数组成员数 (代码数组), 执行进度) .如果 (tzxh = 真) 跳出循环 () .否则 当前行 = 删全部空 (代码数组 [执行进度]) 指令 = 分割文本 (当前行, “,”, ) .判断开始 (指令 [1] = “yd”) tmp = 分割文本 (指令 [2], “.”, ) X = 到整数 (tmp [1]) Y = 到整数 (tmp [2]) 鼠标_移动 (, X, Y) .判断 (指令 [1] = “ys”) 延迟 (到整数 (指令 [2])) .判断 (指令 [1] = “sbdj”) 模拟鼠标点击 (取鼠标水平位置 (), 取鼠标垂直位置 (), 0) .判断 (指令 [1] = “sbyj”) 模拟鼠标点击 (取鼠标水平位置 (), 取鼠标垂直位置 (), 2) .默认 .判断结束 处理事件 () .如果结束 .计次循环尾 () _停止运行按钮_被单击 () .否则 .计次循环首 (到整数 (循环次数编辑框.内容), n) tzxh = 假 sfks = 真 状态条1.置文本 (0, “正在循环运行中,已运行” + 到文本 (n) + “次数,还剩余” + 到文本 (到整数 (循环次数编辑框.内容) - n) + “次!”) 代码数组 = 分割文本 (删全部空 (脚本内容), #换行符, ) .计次循环首 (取数组成员数 (代码数组), 执行进度) .如果 (tzxh = 真) 跳出循环 () .否则 当前行 = 删全部空 (代码数组 [执行进度]) 指令 = 分割文本 (当前行, “,”, ) .判断开始 (指令 [1] = “yd”) tmp = 分割文本 (指令 [2], “.”, ) X = 到整数 (tmp [1]) Y = 到整数 (tmp [2]) 鼠标_移动 (, X, Y) .判断 (指令 [1] = “ys”) 延迟 (到整数 (指令 [2])) .判断 (指令 [1] = “sbdj”) 模拟鼠标点击 (取鼠标水平位置 (), 取鼠标垂直位置 (), 0) .判断 (指令 [1] = “sbyj”) 模拟鼠标点击 (取鼠标水平位置 (), 取鼠标垂直位置 (), 2) .默认 .判断结束 处理事件 () .如果结束 .计次循环尾 () .判断开始 (tzxh = 真) 跳出循环 () .默认 .判断结束 .计次循环尾 () _停止运行按钮_被单击 () .如果结束 .子程序 _开始运行按钮_被单击 tzxh = 假 开始运行按钮.禁止 = 真 添加右击按钮.禁止 = 真 添加单击按钮.禁止 = 真 获取位置按钮.禁止 = 真 循环次数编辑框.禁止 = 真 延时编辑框.禁止 = 真 开始运行 () .子程序 _停止运行按钮_被单击 sfks = 假 停止运行 () 开始运行按钮.禁止 = 假 添加右击按钮.禁止 = 假 添加单击按钮.禁止 = 假 获取位置按钮.禁止 = 假 循环次数编辑框.禁止 = 假 延时编辑框.禁止 = 假




2025.7.6看到评论区需要循环,增加了循环功能,因可能出现BUG,故未添加死循环的功能,有需求的请自取!

2025.7.6看到评论区需要循环,增加了循环功能,因可能出现BUG,故未添加死循环的功能,有需求的请自取!