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

[AU3基础] HotKeySet传值问题求教

  [复制链接]
发表于 2012-6-13 14:18:09 | 显示全部楼层 |阅读模式
HotKeySet("{F8}", "captureEsc")  ;captureEsc中能传递参数
Func captureEsc($x)
        If $x>0 Then
    MsgBox(0,"提示", "成功")
        EndIf
EndFunc
热键HotKeySet可以传递参数给EndFunc
发表于 2012-6-13 17:43:35 | 显示全部楼层
这命令不支持参数
发表于 2012-6-13 20:50:32 | 显示全部楼层
可以在函数EndFunc里再调用函数,这个函数就可以传参数了噻;或者用全局变量也可以啊。
发表于 2012-6-13 20:55:10 | 显示全部楼层
调用的函数不能给函数加上参数. 它将会被忽略
HotKeySet("{F8}", "_TocaptureEsc")
Dim $x = 0
Func _TocaptureEsc()
        $x = 1
        captureEsc($x)
EndFunc
Func captureEsc($x)
        If $x >0 Then
                MsgBox(0,"提示", "成功")
        EndIf
EndFunc
发表于 2012-6-13 20:58:23 | 显示全部楼层
被你误导了,是captureEsc函数,从你的函数名里可以看出应该是捕捉Esc键,为什么热键设置的是F8,不明白。不用传参数啊,看下面程序,可以实现你想要的不?
HotKeySet("{F8}","captureEsc")
$x = 10;
Func captureEsc()
        If $x > 15 Then
                MsgBox(0,"提示","成功")
        Else
                MsgBox(0,"提示","失败")
        EndIf
EndFunc
发表于 2012-6-13 21:00:29 | 显示全部楼层
不好意思,把while循环忘了,没有while达不到效果,因为程序一下就结束了,返回了,实在不好意思,我也是想试下去掉while循环可以不,结果复制上来的时候忘了加上了。
HotKeySet("{F8}","captureEsc")
$x = 10;
while 1
WEnd

Func captureEsc()
        If $x > 15 Then
                MsgBox(0,"提示","成功")
        Else
                MsgBox(0,"提示","失败")
        EndIf
EndFunc
发表于 2012-6-13 21:21:46 | 显示全部楼层
本帖最后由 user3000 于 2012-6-14 08:56 编辑

回复 1# hzcjd


编程可以灵活多一点点:
HotKeySet("{esc}", "_Esc")

While 1
        Sleep(100)
WEnd

Func _Esc()
        $x = InputBox('输入参数', '请输入一个数字', 3, '', '100', '50', @DesktopWidth/2 - 100, @DesktopHeight/2 -50, 3)
    If Not  StringIsDigit($x) Then $x = ''
    captureEsc($x)
EndFunc

Func captureEsc($x = 0)
        If $x>0 Then
        MsgBox(0,"提示", "成功")
        EndIf
EndFunc
补充: 网页没刷新, 其实本楼是对4楼A大进行'狗尾续貂'了!
发表于 2012-6-13 21:22:01 | 显示全部楼层
上面两种方法,都可以曲线到达
发表于 2012-6-13 21:27:50 | 显示全部楼层
回复 2# 星雨朝霞

HotKeySet 自定义的函数可以有一个或多个有默认值的参数.
直接按快捷键传递默认值, 从别的地方调用可以传递别的值了.
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-9-20 15:02 , Processed in 0.079790 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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