qq342252004 发表于 2008-6-15 17:29:59

如何控制这个进度条(让它运行完一个EXE走10%)

ProgressOn("安装进度","")
For $i = 10 to 100 step 10
    sleep(1000)
    ProgressSet( $i, "已完成"&$i& " % ")
Next
ProgressSet(100 , "完成", "完成")
sleep(500)
ProgressOff()

[ 本帖最后由 qq342252004 于 2008-6-15 21:41 编辑 ]

rouland 发表于 2008-6-15 18:16:03

这样的写法岂不是等一秒就跳一步设置?如果是安装的话,应该有一个安装进度的判断方法吧?学习中………………期待有人能够解答!

bing614 发表于 2008-6-15 19:10:38

Dim $Exe=["1.exe","1.exe","1.exe","1.exe","1.exe"]

ProgressOn("安装进度","")
For $i = 1 to UBound($Exe)-1
        ProgressSet(100/UBound($Exe)*$i, "已完成"&100/UBound($Exe)*$i& " % ")
    RunWait($Exe[$i])   
Next
ProgressSet(100 , "完成", "完成")
sleep(500)
ProgressOff()

qq342252004 发表于 2008-6-15 21:41:42

谢谢楼上的朋友

天堂泪吻泪 发表于 2009-7-10 00:43:31

看了这个,开始有点明白了!

dnvplj 发表于 2014-10-5 08:07:32

回复 3# bing614
很精典,请问:把该代码编译成SETUP.EXE后放到SOFT文件夹下,运行"SOFT\SOFT\1.EXE,2.EXE,3.EXE,4.EXE,5.EXE",路径怎么写,请指教。

sak47 发表于 2014-10-5 11:05:23

dim $main = @scriptdir&"\soft\"
Dim $Exe=[$main&"1.exe",$main&"2.exe",$main&"3.exe",$main&"4.exe",$main&"5.exe"]

这样?

dnvplj 发表于 2014-10-5 12:12:52

回复 7# sak47
直接从第2个开始到第5个结束,第1个没反映。

dnvplj 发表于 2014-10-5 12:19:04

本帖最后由 dnvplj 于 2014-10-5 12:27 编辑

1改成0问题解决了,但还有一个问题,如何显示正在安装的文件名,如:正在安装1.exe;正在安装2.exe;正在安装3.exe;正在安装4.exe;正在安装5.exe;本人是菜鸟,请给予指教。

sak47 发表于 2014-10-5 14:33:18

回复 9# dnvplj

ProgressSet(100/UBound($Exe)*$i, "已完成"&100/UBound($Exe)*$i& " % 正在安装"&$exe[$i])

dnvplj 发表于 2014-10-5 15:10:28

本帖最后由 dnvplj 于 2014-10-5 15:23 编辑

回复 10# sak47
能不显示路径吗?而直接显示:正在安装:1.EXE

sak47 发表于 2014-10-5 17:13:42

回复 11# dnvplj

$name = stringsplit($exe[$i],"\")
ProgressSet(100/UBound($Exe)*$i, "已完成"&100/UBound($Exe)*$i& " % 正在安装"&$name)

试试?

dnvplj 发表于 2014-10-5 18:24:48

回复 12# sak47
太高了,解决了。

ma395311229 发表于 2015-9-16 09:29:48

很不错哦~mark一下,留着用

dnvplj 发表于 2016-7-26 22:37:56

回复 12# sak47
朋友您好:能把“正在安装:1.EXE”,改成:正在安装:“1”吗?,多谢了。
页: [1] 2
查看完整版本: 如何控制这个进度条(让它运行完一个EXE走10%)