-
-
20我想在电脑桌面上,不改变现有鼠标指针的位置,按下q键在另一个指定的坐标上点击一下, 用ControlClick,好像必须在程序里面才可以点,要怎样可以在桌面上实现呢?
-
14去年3月份开始发现ahk的,当时用的是1.X版本,发现它的语法一点都不规范,像乱来的 后来发现了2.0,好像不到一个月就直接过渡到2.0,顺便花了点时间把原来的不到1000行代码改成了2.0版本。 现在已经是5000多行代码了,做了几十个功能。 (当然有些功能太复杂,我实在不会,相信99%的人也不会,借用了一些顶级大佬的代码,但95%以上的想法和功能还真是自己写的。不过我的绝大部分代码都不太复杂 我不玩游戏,主要是日常软件的辅助,看到哪个软
-
0参考了https://github.com/WwwZMing/IMEAutoSwitch_V2 他的逻辑判断还是太复杂,而且偶尔会报错,浏览器输入经常会切换错误,原版KBLAutoSwitch已经停更 而且既然已经用上ahk,再开一个ahk编写的KBLAutoSwitch觉得怪怪的,于是自己精简一段出来: 我电脑上只安装一个中文输入法,逻辑比较简单: Auto_Switch := 1 ; 监听窗口切换输入法 if (Auto_Switch = 1) { DllCall("RegisterShellHookWindow", "UInt", A_ScriptHwnd) OnMessage(DllCall("RegisterWindowMessage", "Str", "SHELLHOOK"), shel
-
2;AHK v2, 这是config.ini内容如下: [VAR] kmapx=900 sss1=3 sss2=20 w01=36 h01=33 cmpx01=1564 cmpy01=320 tdxx01=950 tdxy01=400 tdxx02=855 tdxy02=655 tdxx03=1588 tdxy03=944 wh6x01=700 wh6y01=500 wh6x02=399 wh6y02=78 不想一个个写代码读取,因为将来还会有更多赋值 下面是主程序内容: Config := Map() FP01 := "F:\_ku\Documents\_config.ini" keys := IniRead(FP01, "VAR") for key, value in keys { %key% := value } Warning: This local variable appears to never be assigned a value. Specifically: kmapx ▶ 072: ToolTip("◣", kmapx, 0, 1)
-
1CoordMode Pixel CoordMode,Mouse loop 600 { FindText().ImageSearch(x1, Y1, 0, 0, A_ScreenWidth, A_ScreenHeight, Text:="|<>##10$0/0/3A382C,10/9/5C5744") if ErrorLevel ;如果没找到 { sleep 1000 continue ;继续寻找图片 } else ;如果找到 { mousemove,% x1+3, % Y1+3,5, ;微调整鼠标位置,避免点击边框 sleep 200 Click break } } ExitApp ;注意这里执行完会退出脚本,但有时我想按F4键,15分钟后电脑关机 return 上面代码是不按F4键常规执行,现在想常规执行脚本时,再多条按F4键15分钟后电脑关机,我想设定F4键
-
4按下 f1 检测当前鼠标坐标,然后平移到 xx 位置,仓管牛马求助
-
1代码如下,想定是aabaab这样的循环输出结果,但是结果并不对。 Settimer a1, on Settimer b1, on a1: send,a Sleep,1000 return b1: send,b Sleep,2000 return
-
33
-
6如题,尝试sendinput, send{raw}过,实现不了,如果是直接先send shift切换中英文的话,有时候行有时候不行,看看大佬是怎么实现的
-
0
-
0好像热键能自动地屏蔽掉相同的热键,但是不会屏蔽其它的热键。。?
-
4求脚本,比如单键按下a,输出a,长按输出1,双击输出10
-
0; 弹出一个输入框,让用户输入所需的文件扩展名 InputBox, 文件扩展名, 请输入所需的文件扩展名:, 如:txt ; 将剪贴板中的内容追加到一个新文件中 ; 文件名格式为:当前工作目录下的 年-月-日-时-分-秒.用户输入的扩展名 ; 使用UTF-8编码 FileAppend, %A_Clipboard%, %A_WorkingDir%\%A_Now%.%文件扩展名%, UTF-8 ; 脚本执行完毕后返回 return 利用右键菜单管理程序ContextMenuManager之类加入菜单。就可以在当前目录位置,把剪切板内容写进当前时间加自定义扩展名创建文件了。
-
6比如在autocad中,数字键1设置1::Send "L{Enter}",但接着弹出文本框要求输入数值的时候如果要输100,继续按1就会被迫输入L,在这个时候如何禁用1这个热键,只让他输入1
-
0#Requires AutoHotkey v2.0 CATIA := ComObjActive("CATIA.Application") ; 定义 WinAPI 函数 CreateThread := "Kernel32\CreateThread" WaitForSingleObject := "Kernel32\WaitForSingleObject" CloseHandle := "Kernel32\CloseHandle" ; 定义 等待 函数的调用,而不使用自带Sleep函数 Pause(milliseconds) { DllCall("kernel32.dll\Sleep", "UInt", milliseconds) } ; 线程函数 ThreadFunc(Param) { Loop 10 { Pause(2000) ;如果用AHK的Sleep会阻塞线程. GroupAdd("弹窗标题", "超级输入消息") GroupAdd("
-
0小程序需要电脑端才可以,分辨率要求是2560 * 1600. 程序使用的是 autohotkey 。 欢迎大家试用,并提出宝贵意见。 因为是学习玩,并没有大开发的意向。 通过网盘分享的文件:wxavatar.exe 链接: https://pan.baidu.com/s/1rFRZdxouRLOwTPaw-aY4LA?pwd=kyrk 提取码: kyrk --来自百度网盘超级会员v3的分享
-
3比如我想按f后,输出123456789,9个数字各一次,次序随机,每一次按f,结果都不一样
-
2按住Q键,向记事本_连续发送按键Q;弹起Q键,则停止发送按键Q . 请用AutoHotkey写一段代码。我想实现: 1 先获取记事本_主窗口句柄Hwnd,再获取子窗口句柄childHwnd。 2 按住Q键,就向处于后台的记事本子窗口childHwnd 连续发送按键Q; 弹起Q键,则停止发送按键Q。 3 如此循环。 . ```autohotkey #NoEnv SetBatchLines, -1 ; 获取记事本主窗口句柄 hwnd := WinGetHandle("无标题 - 记事本") ; 获取子窗口句柄,这里假设子窗口是记事本的编辑区域 childHwnd := DllCall("user32.d
-
15
-
1注册与反注册。regsvr32 com接口dll . regsvr32 路径\dm.dll regsvr32 /u 路径\dm.dll regsvr32是一个用于注册和反注册DLL文件的命令行工具,主要用于在Windows系统中注册或注销COM组件。 命令行用记事本编辑,文件后缀名保存为 .bat . 使用方法 注册DLL文件:在命令提示符中输入 regsvr32 [lbk]路径[rbk]filename.dll,其中 [lbk]路径[rbk]filename.dll 是要注册的DLL文件的完整路径和名称。如果DLL文件位于当前目录下,可以直接输入文件名。 . 反注册DLL文件:在命令提示符中输入 regsvr3
-
1做了魔兽世界正式服和怀旧服服的一键,然后换台电脑,正式服的一件正常可以使用,怀旧服的一件发现取色的数值完全变了,有人能提供点解决思路吗,两台电脑都是a卡,游戏设置一样,分辨率这些都是一样,正式服的一键两台电脑都是正常使用,怀旧服为什么会取色数值天差地别?
-
3百度搜索:autohotkey。找到带有官网标识的,点进去就是官方主页
-
3
-
172#IfWinActive,贴吧世界 return f1:: if (xh){ xh=0 }else{ xh++ } if xh=0 ControlGet,AHK_ID,Hwnd ,,,%窗口名% if xh=1 ControlGet,AHK_ID2,Hwnd ,,,%窗口名% MsgBox,窗口1ID=%AHK_ID%窗口2ID=%AHK_ID2% return w:: ControlSend,ahk_parent,{w Down},ahk_id %AHK_ID2% ControlSend,ahk_parent,{w Down},ahk_id %AHK_ID% KeyWait,w ControlSend,ahk_parent,{w up},ahk_id %AHK_ID2% ControlSend,ahk_parent,{w up},ahk_id %AHK_ID% return 原作者 @wo小熊o 这位大佬写的,然后可以2个窗口多开,我在基础上加的数字,但是每次还是只能控制2个窗口。不知道是哪里错误了呢
-
10
-
7给大佬递烟。。。我的需求是用了68键键盘,没有f1~f9那一行按键了,我自己映射了esc是~键,有时候又想把esc映射取消,让esc键恢复原本的按键... 请问如何实现暂停指定按键的映射 代码如下 Capslock & 1::F1 Capslock & 2::F2 Capslock & 3::F3 Capslock & 4::F4 Capslock & 5::F5 Capslock & 6::F6 Capslock & 7::F7 Capslock & 8::F8 Capslock & 9::F9 Capslock & 0::F10 Capslock & -::F11 Capslock & =::F12 Capslock & ESC::esc ESC::` ;就是最后这俩,想要按下某按键后,esc恢复原
-
4
-
8直接传参提示错误,各位大佬帮帮忙 F1::{ global flag_f flag_f := !flag_f MouseGetPos &MouseX, &MouseY X1:=MouseX Y1:=MouseY if (flag_f := !flag_f) SetTimer lianXu(X1, Y1), 7700 ;设定时钟 else SetTimer lianXu(X1, Y1), 0 } lianXu(X1, Y1) { MouseMove X1, Y1 Sleep 2100 }
-
0
-
6有没有大佬们,能会写这样的 ,就是魔兽世界 2个窗口切换 F1 是第一个游戏窗口,F2是第2个游戏窗口 ,再或者是F1 可以实现 游戏窗口1和游戏窗口2之间的切换。
-
18游戏包括网游:apex,单机:大镖客2、战神4、2077 只有a::b这种一行的指令能生效,多行指令用send、sendplay、sendinput都无效 apex里按住a,会一顿一顿地按b;倒是英雄联盟能正确生效 脚本是管理员模式运行、游戏也是窗口化 #InstallKeybdHook a:: sendplay {d} q:: sendinput d s:: send {d} 这几种方式都无效 求教
-
3我用工具获取了steam的窗口句柄,写进脚本之后无法关闭。有谁写过了吗?
-
23autohotkey_H解压后再怎么操作才能使用
-
3在记事本里测试都是成功的,在其他窗口也没问题,唯独到了诛仙里一点反应都没有。关掉杀毒软件也没用。怀疑是游戏的自我保护模块作怪,不知有什么办法
-
14表述的好像不清楚,我想实现按Q一下就是“滚轮上”,再按一下Q就是“滚轮下”,如此循环往复,只要按Q就循环实现滚轮上下,这样的想法能实现吗,或者说有别的软件能实现吗 希望大佬们能给些指点
-
3AAA:= [ ["t","k","j","q","z","f","o","v","s"], ["c","b","l","w","n","g","p","d","r"], ["i","a","u","h","m","y","x","e","k"], ["w","n","b","g","r","j","o","f","q"] ] i1:=AAA[1][2] ^+!w::Send %i1% 输出错误
-
2
-
3AHK V2 pause怎么恢复 如图快捷键按了 暂停后, 显示已暂停,但是再按END也不恢复 一定要鼠标去点勾掉暂停吗?
-
10我在github的https://github.com/ddxoft/master下载了dd,然后找到了两个dll 一个DD64.dll,一个DD94687.64.dll, 这是代码, ;DllCall("LoadLibrary", "Str", "C:\DD64.dll", "Ptr") DllCall("LoadLibrary", "Str", "C:\DD94687.64.dll", "Ptr") F6:: DllCall("DD\DD_btn","Int",4) ;点击右键 DllCall("DD\DD_btn","Int",8) ;松开右键 return F10:: MouseMove 100,300 Return 按F6不生效. 但是也不报错. 有大佬知道吗,网上也没找到多少ahk+dd的文章
-
3大佬们,想请教一个问题,ahk要怎么获取某个像素点的亮度啊,想通过亮度对比来控制启停。
-
5后台找图找不到,后台窗口截屏 返回是黑图,这是什么原因?窗口句柄没问题 . DX。使用DirectX截屏 如果截图的是黑图,请参考这一篇,DirectX截图黑屏的解决办法。 . 制作游戏时,游戏公司使用DirectX软件 绘制的游戏窗口, 后台操作时,必须使用大漠/ 天使/ 乐玩插件 的dx截图模式。 DX游戏窗口,后台模式只接受dx端口的输入。dx图色 dx鼠标 dx键盘, . 按键精灵 tc简单开发 易语言的窗口模式无效。dx绑定模式 由大漠首创,它是大漠最大的贡献。
-
2XButton2:: Loop { GetKeyState,State,XButton2,P If (State="U") ; { Break } if ( GetColor(1693,1270)=="0xACC4CC" ) ; { send 2 } 想在这里加上如果这个坐标识别到以后只执行这个按键就可以。不再执行下面的几个,如果没识别到再执行全部。求助!!!!!!!! if ( GetColor(1772,1269)=="0xB29A8E" ) ; { send 3 } if ( GetColor(1618,1271)=="0x693C32" ) ; { send q } } Return
-
4
-
1F11:: MouseGetPos, mouseX, mouseY PixelGetColor, color, %mouseX%, %mouseY%, RGB stringRight color,color,10 ; tooltip, %mouseX%,%mouseY%颜色是:%color% if !A_IsAdmin { Run *RunAs "%A_ScriptFullPath%" ExitApp } #Persistent #NoEnv v_Enable=0 XButton1:: { v_Enable:=!v_Enable If(v_Enable=0) SetTimer, Label0, Off ELSE SetTimer, Label0, 0 } Return Label0: if ( GetColor(1473,1376)=="0x997F6D") ; { loop,1{ Sendinput {v}{v}{v} } return } if ( GetColor(1110,1372)=="0xDBCE6A" && GetColor(1615,1379)=="0x262626") ;超神 { loop,1{ Sendinput {z}{z}{z} } r
-
7用ControlClick后台发送鼠标点击某个坐标,但是都只在光标当前位置点击,并没有点击脚本的坐标位置! 脚本如下用option的坐标: F3::Pause F2:: loop { ControlClick,,魔兽世界,,,,x821 y493,, sleep 1000 } return 以及加POS使用Control-or-Pos 参数中描述的 X/Y 位置模式也不行 F3::Pause F2:: loop { ControlClick, x821 y493, 魔兽世界,,,,Pos,, sleep 1000 } return 求大佬们帮忙,目的就是想边看电影一边后台发送魔兽世界鼠标点击操作。
-
0SetCapsLockState "Alwaysoff" CapsLock & WheelUp::Volume_Up CapsLock & WheelDown::Volume_Down 触发之后,滚轮就被锁住了, 浏览网页,文档,资源管理器等就滚不动页面了,求解
-
4已经可以使用,但美中不足的地方,偶尔抬起f1的时候还会保持20行数,要稍等片刻才能恢复,不知道还能不能优化 SetScrollSpeed(speed) { DllCall("SystemParametersInfo", "UInt", 0x0069, "UInt", speed, "Ptr", 0, "UInt", 3) } F1:: F1 up:: { switch ThisHotkey { case "F1": SetScrollSpeed(20) case "F1 up": SetScrollSpeed(3) } }
-
2SetScrollSpeed(speed) { DllCall("SystemParametersInfo", "UInt", SPI_SETWHEELSCROLLLINES, "UInt", 0x0060, "Ptr", speed, "UInt", 0) } ^+a::SetScrollSpeed(10) ^+s::SetScrollSpeed(3) 这是半成品,不执行,请高手更正