关于按键循环,请大佬们帮助
autohotkey吧
全部回复
仅看楼主
level 1
大佬好,这是我的循环
XButton1::
if(a:=!a)
{
SetTimer,TagCX,100
}
else
{
SetTimer, TagCX, Off
}
Return
TagCX:
{
PixelGetColor, color, 1147, 589, RGB
if ( color=0xF6FEFE )
send {Q} ;
if ( color=0xFB2619)
send {7} ;
if ( color=0x143843 )
send {8} ;
if ( color=0x060D18 )
send {9} ;
if ( color=0x9D4D9E)
send {0} ;
if ( color=0xA90819)
send {0} ;
if ( color=0x435D88 )
send {F5} ;
if ( color=0x000000 )
send {F6} ;
if ( color=0x00B194)
send {F7} ;
if ( color=0x44614E)
send {F8} ;
if ( color=0x387A32)
send {F9} ;
if ( color=0x180813)
send {F10} ;
if ( color=0x2A705C)
send {F11} ;
if ( color=0x9ED4DF)
send {F12} ;
sleep,200
}
return
这是我的正常循环,大佬帮我加入一个按住某个按键会连发8和9,松开会继续这个循环的指令吗,然后在加入一个按住T会暂停这个循环会发T按键的指令松开在继续这个循环
2021年04月26日 06点04分 1
level 1
@OTA
大佬好
2021年04月26日 06点04分 2
level 1
你这是按鼠标侧键,每200MS自动触发一次对坐标1147, 589的颜色判断,一共有14种可能。
你要加的新功能有几点需要你再详细🔒一下,
1:按住某个按键会连发8和9:按下这个按键的时候,此时原循环(无限判断颜色的)是不是需要停止,只运行89的循环。
2:某个按键和 T,是否需要只有在XButton1循环下才能生效?还是说这两个新加的热键是独立的个体,不受XButton1的影响,只会单方面影响XButton1
3:某个按键到底是什么按键[冷]
2021年04月26日 08点04分 3
感谢大佬 按键可以是任意键shift或者qert 按键按下的时候鼠标侧键循环暂停只释放按键按下时的触发键。可以只在循环时有效,然后帮我加个可以关闭和开启的开关方便去打字[太开心] [太开心] [太开心]
2021年04月26日 09点04分
level 1
感谢大佬
按键可以是任意键shift或者qert
按键按下的时候鼠标侧键循环暂停只释放按键按下时的触发键。可以只在循环时有效,然后帮我加个可以关闭和开启的开关方便去打字[太开心][太开心][太开心]
2021年04月26日 09点04分 4
level 1
#NoEnv
#KeyHistory 0
#MaxHotkeysPerInterval 99999
#HotkeyInterval 1000
NumpadSub::suspend on
NumpadAdd::suspend off
q::return ;禁止【某个按键】,这里是Q,为防止Q原本输入功能穿插在连发8,9循环中,这里设置将Q取消了原本功能。如果不希望q原有功能被屏蔽,请删除此行
XButton1::
{
v_flag:=!v_flag
if (v_flag=1)
SetTimer,TagCX,0
else
SetTimer, TagCX, Off
}
Return
TagCX:
loop,1
{
if getkeystate("q","P") ;检测某个按键是否被按下,这里是Q,按下Q循环89
{
loop
{
send {8}
sleep,20
send {9}
sleep,20
}Until Not getkeystate("q","P") ;检测某个按键是否放开,这里是Q,松开Q跳出89循环,回到原本循环
break
}
PixelGetColor, color, 1147, 589, RGB
if ( color=0xF6FEFE )
send {Q} ;
if ( color=0xFB2619)
send {7} ;
if ( color=0x143843 )
send {8} ;
if ( color=0x060D18 )
send {9} ;
if ( color=0x9D4D9E)
send {0} ;
if ( color=0xA90819)
send {0} ;
if ( color=0x435D88 )
send {F5} ;
if ( color=0x000000 )
send {F6} ;
if ( color=0x00B194)
send {F7} ;
if ( color=0x44614E)
send {F8} ;
if ( color=0x387A32)
send {F9} ;
if ( color=0x180813)
send {F10} ;
if ( color=0x2A705C)
send {F11} ;
if ( color=0x9ED4DF)
send {F12} ;
else
{
}
sleep,200
}
return
#if (v_flag=1)
$t::
{
SetTimer, TagCX, Off
sleep, 45
send {t down}
KeyWait,t,up
send {t up}
SetTimer, TagCX, on
}
return
#if
2021年04月26日 11点04分 5
大佬,我最近发现这个取色到按键按下,到第二个取色按下,中间的延迟几乎要1秒才按一下,有办法提速吗
2025年09月14日 04点09分
level 1
简单说一下功能
,小键盘 - 号是停止功能,+ 号是开启功能,但要注意,在Xbutton循环过程中按-号只会停止所有功能,并不会终止循环,终止循环只有在【功能开启】时再按一次Xbutton,才会真正停止,
或者你也可以用 reload ,或者Pause,来停止脚本,不过我这里没写就是了
Xbutton按下无限颜色判断循环,循环中按Q进入8 9 的循环,松开回到颜色判断循环
循环中(只有在循环中才有效),按住T,会暂停循环并且输入一次T,然后等待你键盘T是否松开,只有当你松开键盘T时,循环才会继续
[滑稽]
2021年04月26日 11点04分 6
@流年负沧海丶 可以的,复制原loop1到break下面的"}"之间的句式,穿插在颜色判断循环的任意一行,【但不能穿插在原loop1到break下面的"}"之间】,把里面Q,改成T的,以此类推,想加多少都没限制
2021年04月28日 09点04分
大佬,如果我想添加其他一些类似t的方式进入,直接复制t的方式放在后面能实现吗,从#if那里复制修改
2021年04月26日 11点04分
@流年负沧海丶 试试呗,应该可以吧,整体框架应该不用改[滑稽]就改一下触发键和对应的KeyWait,t,up就行
2021年04月26日 11点04分
好的,好谢大佬
2021年04月26日 12点04分
level 1
感谢大佬[花心][花心]
2021年04月26日 11点04分 7
1