找回密码
 加入
搜索
查看: 2123|回复: 6

关于HotKeySet问题

[复制链接]
发表于 2009-1-15 16:55:30 | 显示全部楼层 |阅读模式
请帮忙
-------------------------------------------------------
HotKeySet("w", "f_sk1")
HotKeySet("e", "f_sk2")
Func f_sk1()
    Send("e")
EndFunc
Func f_sk2()
    Send("v")
EndFunc
----------------------------------------------
这段代码,如果最后输入w结果输出的是v
可是我的本意是w转义成e就结束
如何解决呢?
发表于 2009-1-15 17:14:40 | 显示全部楼层
按了w  运行 f_sk1  输出 e
e又是f_sk2的热键 所以激活f_sk2 输出v

评分

参与人数 1金钱 +1 收起 理由
顽固不化 + 1 我很赞同

查看全部评分

 楼主| 发表于 2009-1-16 08:54:50 | 显示全部楼层

楼上没意思

我不是让解释为什么,
我要实现办法
比如ahk的
a::b
b::c

hotkey, a, send b
hotkey, b, send c
按a不会转成c


我想问autoit中实现a转b不继续转c的办法

希望质量回贴
发表于 2009-1-16 09:15:49 | 显示全部楼层
HotKeySet("w", "f_sk1")
HotKeySet("e", "f_sk2")

While 1
sleep(100)
WEnd

Func f_sk1()
HotKeySet("e")
Send("e")
HotKeySet("e", "f_sk2")
EndFunc

Func f_sk2()
Send("v")
EndFunc
发表于 2009-1-16 10:10:14 | 显示全部楼层
俄 热键方面还是ahk吧 ....
 楼主| 发表于 2009-1-16 11:18:44 | 显示全部楼层

顽固不化基本解决


顽固不化提的这个我发现了
而我要完成的转义是要有很多个转义,只能通过switch来一一屏蔽了
没有好办法。。。
发表于 2009-1-16 14:58:02 | 显示全部楼层
难道是想要个键盘破坏器?

_Singleton(@ScriptName)

For $n = 0 To 25
        HotKeySet(Chr(Asc('a') + $n), "hkswap")
Next
HotKeySet("", "hkswap")

While 1
        Sleep(1000)
WEnd

Func hkswap()
        HotKeySet(Chr(Asc('z') - Asc(@HotKeyPressed) + Asc('a')))
        ConsoleWrite(@HotKeyPressed & @CRLF)
        Switch @HotKeyPressed
                Case 'a' To 'z'
                        Send(Chr(Asc('z') - Asc(@HotKeyPressed) + Asc('a')))
                Case ""
                        Exit
        EndSwitch
        HotKeySet(Chr(Asc('z') - Asc(@HotKeyPressed) + Asc('a')), "hkswap")
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-23 15:56 , Processed in 0.086440 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表