zhenglei 发表于 2010-10-17 01:55:38

F5热键设置后则进入了死循环操作了。。 我汗!!!功能无法实现

F5热键设置后则进入了死循环操作了。。 我汗!!!功能无法实现

脚本功能如下:程序运行后按下   F5则自动将我的电脑窗口激活并刷新我的电脑 。。但以下代码为什么进入了 死循环状态了。。 不停的刷新我的电脑。。 我要的功能就是当我按下   F5才刷新。。


兄弟们帮我看看代码怎么搞才可以。。。。。。我搞了老半天都是死循环

特别说明    F5这个热键是不可以改变的。。。。。 必须使用这个热键。。谢谢。。。。。
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("热键输入框", 208, 43, 192, 124)
$Input1 = GUICtrlCreateInput("请输入F5", 16, 8, 177, 21)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
HotKeySet('{F5}','hot');;;;;;;;;设置热键F5
While 1
      $nMsg = GUIGetMsg()
      Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit

      EndSwitch
WEnd

Func hot()   ;;;;;;;;;;;自动刷新我的电脑
WinActivate("我的电脑", "")
Send("{F5}")
      EndFunc

republican 发表于 2010-10-17 07:22:16

回复 1# zhenglei
hotKeyset的帮助中有非常明显的一段,; 捕获并传递按键事件
HotKeySet("{Esc}", "captureEsc")
Func captureEsc()
    ; 这里可定义要做的各种任务
    HotKeySet("{Esc}")    ;取消hotkey
    Send("{Esc}")            ;发送
    HotKeySet("{Esc}", "captureEsc");重新注册
EndFunc

xianhou 发表于 2010-10-17 07:30:56

回复 1# zhenglei


第 9 行定义 F5 热键后,F5 已经有了新的意义。
第 21 行的 F5 使用不当,这里的 F5 已经没有 windows 原来的刷新功能了,而是造成了再一次按 F5 热键的效果,就是死循环。

zhenglei 发表于 2010-10-18 18:35:58

谢谢回复啊。。 我测试一下。。

liufenglg 发表于 2010-10-18 22:16:16

回复zhenglei


第 9 行定义 F5 热键后,F5 已经有了新的意义。
第 21 行的 F5 使用不当,这里的 F5 ...
xianhou 发表于 2010-10-17 07:30 http://www.autoitx.com/images/common/back.gif


    说的 不错

qq123123 发表于 2010-10-20 04:41:30

从模拟会让 原来的F5刷新功能丢失?

没有测试过,马上去测试!

chenronting 发表于 2010-10-20 07:13:37

本帖最后由 chenronting 于 2010-10-20 07:16 编辑

回复 3# xianhou


    那不是也只引用一次而已吗, 我看不出来哪里会死,而且他说了,按F5还是有刷新的功能的,他说会不停的刷新。热键,按一次,只会执行一次的吧。我是不明白了。请后面的接去吧
页: [1]
查看完整版本: F5热键设置后则进入了死循环操作了。。 我汗!!!功能无法实现