依次调用自定义函数并及时显示结果?
请问怎么依次调用自定义函数是这样的
For $Mun = 8 To 1 Step -1
Tip()
Wallpaper()
finish()
Sleep(1000)
ToolTip(@CR & $tip & @CR, @DesktopWidth - 350, @DesktopHeight - 120, 正在执行: 第(" & $Mun & "/8)项 ", 1)
Next
就是想让调用的函数$tip为逐个ToolTip显示的结果或@error。
哎 菜鸟没思路 用循环变量$Mun 回复 2# veket_linux
额还是不太明白,可以有个实列么?
我可能说的不太详细,是这样的For $Mun = 2 To 1 Step -1
Tip()
finish()
...
; Sleep(3000)
ToolTip(@CR & $tip & @CR, @DesktopWidth - 350, @DesktopHeight - 120, "正在执行: 第(" & $Mun & "/8)项 ", 1)
Next
我想用 $tip来显示运行后每个函数的结果或@error,这样就能依次显示结果了,所以先瞎写一个望高手能理解我想要的思路,谢谢,预祝大家元旦快乐!成为高手没有烦恼呵呵 没看懂。。。。。 回复 4# netegg
For $Mun = 2 To 1 Step -1
MsgBox (0,"","")
If @error=0 Then $tip="成功运行"
Sleep(3000)
ToolTip(@CR & $tip & @CR, @DesktopWidth - 350, @DesktopHeight - 120, "正在执行: 第(" & $Mun & "/2)项 ", 1)
MsgBox (0,"","")
If @error=0 Then $tip="成功OK!"
Sleep(3000)
ToolTip(@CR & $tip & @CR, @DesktopWidth - 350, @DesktopHeight - 120, "正在执行: 第(" & $Mun & "/2)项 ", 1)
...
.....
......
Next
;注:第一和第七行的MsgBox (0,"","")只是代表调用的一些不同的函数或UDF,,冒号为类似的程序一直下去,所以我只是想简化...
望高手能解决 回复 5# ycy
还是不太明白,把代码贴全些 For $i = 8 To 0 Step -1
ToolTip (A(),'','',$i)
Sleep(1000)
Next
func A()
Return @MSEC
endfunc 回复 1# ycy Global $work, $tip
For $Mun = 1 To 2 Step 1
$tip = '当前为第' & $Mun & '次循环'
Tip()
_Msg(@error)
Sleep(2000)
finish()
_Msg(@error)
Sleep(2000)
;...
ToolTip(@CR & $tip & @CR, @DesktopWidth - 350, @DesktopHeight - 120, "正在执行: 第(" & $Mun & "/8)项 ", 1)
Next
Func Tip()
$work = 1
EndFunc
Func finish()
$work = 2
Return SetError(1, 0, $work)
EndFunc
Func _Msg($eCoce)
If $eCoce Then
ToolTip(@CR & $tip & @CR, @DesktopWidth - 350, @DesktopHeight - 120, "执行第 " & $work & " 个函数出错了.", 1)
Else
ToolTip(@CR & $tip & @CR, @DesktopWidth - 350, @DesktopHeight - 120, "执行第 " & $work & "个函数成功. ", 1)
EndIf
EndFunc 回复 3# ycy
$tip是从什么地方蹦出来的 本帖最后由 netegg 于 2012-12-31 20:47 编辑
For $Mun = 2 To 1 Step -1
func1()
If @error = 0 Then showtip("成功运行", $Mun)
func2()
If @error = 0 Then showtip("成功OK!", $Mun)
Next
Func showtip($i, $y)
ToolTip(@CR & $i & @CR, @DesktopWidth - 350, @DesktopHeight - 120, "正在执行: 第(" & $y & "/2)项 ", 1)
Sleep(3000)
endfunc
这个意思? 本帖最后由 shqf 于 2013-1-10 18:39 编辑
"$tip来显示运行后每个函数的结果或@error","依次显示结果",‘第(" & $Mun & "/8)项 "’
从楼主如上的片断语言中,似乎理解了楼主的意思,但只是猜呵。
既然要依次显示每项函数运行的结果,就不要用循环,如循环了,会多次地依次执行Wallpaper()、finish()那几个函数。
依次地运行函数并显示其结果,就达到了楼主的目的。
代码大概如下(仅表示思路,不能执行):Local $tip,$Mun = 0
Wallpaper()
Tip()
Sleep(3000)
finish()
Tip()
Sleep(3000)
......
Func Wallpaper()
......
If <表达式成立> Then
$tip = "成功"
Else
$tip = @error
EndIf
Return $tip
EndFunc ;==>Wallpaper
Func finish()
......
If <表达式成立> Then
$tip = "成功"
Else
$tip = @error
EndIf
Return $tip
EndFunc ;==>finish
Func Tip()
$Mun = $Mun + 1
ToolTip(@CR & $tip & @CR, @DesktopWidth - 350, @DesktopHeight - 120, "正在执行: 第(" & $Mun & "/8)项 ", 1)
EndFunc ;==>Tip
页:
[1]