找回密码
 加入
搜索
查看: 3272|回复: 8

[系统综合] 请教任意字母做快捷键的方法

  [复制链接]
发表于 2013-1-24 22:57:18 | 显示全部楼层 |阅读模式
我想用任意字母比如 abc 做快捷键
请教,有什么好的方法吗?
发表于 2013-1-25 09:06:13 | 显示全部楼层
没仔细看,你试下能满足你的要求不
 楼主| 发表于 2013-1-25 14:47:28 | 显示全部楼层
没仔细看,你试下能满足你的要求不
haijie1223 发表于 2013-1-25 09:06



   请教有何高见!
发表于 2013-1-25 14:59:30 | 显示全部楼层
本帖最后由 afan 于 2013-1-25 15:31 编辑

先 HotKeySet 设置 “a”热键,再在调用的函数内 _IsPressed() 判断 “b”、“c”键是否按下,都按下则执行。
注:因为a键已被设置为热键,所以对输入“a”会有影响,需特殊处理。

不建议走这种没有“Ctrl”、“Shift”… 同行的非寻常路…

评分

参与人数 1金钱 +20 收起 理由
haijie1223 + 20 学习

查看全部评分

发表于 2013-1-25 15:09:15 | 显示全部楼层
afan思路不错
发表于 2013-1-25 16:21:18 | 显示全部楼层
回复 3# 精彩的人生


    晕啊,竟然忘了给你贴上地址了:
http://www.autoitscript.com/forum/topic/90492-hotkey-udf/
发表于 2013-1-25 19:43:27 | 显示全部楼层
回复  精彩的人生


    晕啊,竟然忘了给你贴上地址了:
haijie1223 发表于 2013-1-25 16:21



    那个可能比较难搞,试下简单例子
#Include <Misc.au3>

HotKeySet('a', '_HotKey_a')
HotKeySet('{esc}', '_Exit')
Global $Fsend = 0

While 1
        Sleep(1000)
WEnd

Func _HotKey_a()
        If $Fsend Then Return
        Local $AllDown
        While _IsPressed('41')
                $Fsend = 1
                If _IsPressed('42') And _IsPressed('43') Then
                        $AllDown = 1
                        ExitLoop
                Endif
        Wend
        $Fsend = 0
        If $AllDown Then Return Msgbox(64, 0, '执行热键abc的动作')
        HotKeySet('a')
        Send('a')
        HotKeySet('a', '_HotKey_a')
EndFunc   ;==>_HotKey_a

Func _Exit()
        Exit
EndFunc   ;==>_Exit
发表于 2013-1-25 20:38:17 | 显示全部楼层
我想用任意字母比如 abc 做快捷键
请教,有什么好的方法吗?
精彩的人生 发表于 2013-1-24 22:57


有界面的程序码?如果是可以在控件文本后加(&A)之类的。那样就按alt+字母操作
 楼主| 发表于 2013-1-25 22:27:35 | 显示全部楼层
谢谢各位的热心解答!
回复楼上的朋友是全局的
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-16 00:34 , Processed in 0.083877 second(s), 28 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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