AU3跳转
AU3里面有没有一条命令是可以相当于BAT里面的GOTO跳转的? 学会搜索或先看帮助,那样会更有好处 我觉得学au3 应该按照这个顺序1.看教程
2.看帮助
3.搜索论坛 4. "goto"命令哪去了?
失踪了,呵呵.很不幸.噢不,您不能问为什么——反正就是这样. 这就像是在电影 时间劫匪(Time Bandits)结尾时他们在微波发现的那块石头:)
AutoIt v3 以使用现今大部分常用的"循环"为特色,因此Goto不再是必需的. 请查看 While, Do, For, ExitLoop, ContinueLoop 以及 函数 了解更加先进的解决方式:) 另外当你看帮助文档的时候, 请查看 循环(loops), 条件语句 和 函数 部分的说明. 我向您保证,一旦您熟悉了它们的用法,实际上您将能在几分钟内用其它语言编写程序.
为了让你开始了解这一点,下面演示在2.64版中Goto的最基本用法,同时也是个无限循环:
:mylabel
...执行一些任务...
...其它任务...
goto, mylabel
v3 版中一个总是"true(表达式成立)"的简单的While循环
While 1 = 1
...执行一些任务...
...其它任务...
Wend 用自定义函数就可以了!可以像 BAT 或 CMD 里的 Goto 命令一样,实现任意位置跳转。不像 While……Wend 那样,对代码的位置要考虑好,否则无法自由乱跳。(不过这样一来,代码就乱七八糟的影响可读性了……)
Func ReCustom()
代码……
EndFunc
FindEnd()
Custom()
Func Custom()
代码……
EndFunc
ReCustom()
Func FindEnd()
代码……
End Func 原来学basic时喜欢用跳转goto,但可读性不怎么样。现在实现跳转功能的方法多了。 使用自定义函数
Func 函数名()
代码
EndFunc
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("Form1", 300, 300, 192, 124)
$Button1 = GUICtrlCreateButton("tiaozhuan2", 80, 64, 121, 33, 0)
$Button2 = GUICtrlCreateButton("tiaozhuan3", 80, 124, 121, 33, 0)
GUISetState(@SW_SHOW)
HotKeySet("+!d", "tiaozhuan1") ;Shift-Alt-d快捷键,进入tiaozhuan1函数
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
tiaozhuan2();按下tiaozhuang2按钮时,执行tiaozhuan2()
Case $Button2
tiaozhuan3()
EndSwitch
WEnd
Func tiaozhuan1()
MsgBox(0, "", "11111111111")
EndFunc ;==>tiaozhuan1
Func tiaozhuan2()
MsgBox(0, "", "222222222222")
EndFunc ;==>tiaozhuan2
Func tiaozhuan3()
MsgBox(0, "", "33333333333333")
EndFunc ;==>tiaozhuan3 没有goto真的很不方便,怎么办啊? 同问,希望有大侠能做出来。 为什么要把一种语言里的东西去放在另一种语言里,难道没有同样的语句就真的这么麻烦吗,楼上也说过了,定义一个自定义函数,跳转的方式更自由 楼上定义的函数不叫 GOTO,叫做Select,跟GOTO比差远了,不是同一个档次的函数。 4# sxd
论坛的激情会员哦。。。喜欢 郁闷.最近发现论坛问GOTO的同志很多啊..`.`` Re 1#/ 11#:
对于思路开阔的人,goto有没有都无所谓,我想楼主也应该发散下思维。
Select和goto都不是函数,是语句,一个条件判断,一个流程控制,两者怎具可比性呢? 4# sxd
论坛的激情会员哦。。。喜欢
feicuiboy 发表于 2009-8-29 00:41 http://www.autoitx.com/images/common/back.gif
哇哈哈哈 :face (33):
Switch $你.性别
Case '男'
MsgBox(0, 0, '不好意思我不喜欢男人')
Exit
Case '女'
MsgBox(0, 0, '更不好意思我结婚了')
Exit
Case Else
MsgBox(0, 0, '这个我更没兴趣')
Exit
Exit
Exit
EndSwitch
以上代码请使用最新的AutoIt 250版本编译运行
页:
[1]
2