关于进度条的问题
本帖最后由 dnvplj 于 2012-9-22 02:21 编辑下面的代码是弹出光驱+卸载U盘,请问各位朋友:“进度条”如何从开始到结束都显示。;1退出光驱
Dim $var=DriveGetDrive("CDROM")
CDTray($var,"open")
TrayTip("通知","光驱已弹出,稍后自动关闭!",1)
Sleep(5000)
CDTray($var,"closed")
;2退出U盘
Run("Rundll32 Shell32.dll,Control_RunDLL HotPlug.dll",@SystemDir);调用对话框
WinWait("安全删除硬件","硬件设备(&H):")
WinActivate("安全删除硬件","硬件设备(&H):")
Send("!S")
WinWait("停用硬件设备","确认被停止的设备")
WinActivate("停用硬件设备","确认被停止的设备")
ControlClick("停用硬件设备","确认被停止的设备","Button1")
WinWait("安全删除硬件","关闭(&C)")
WinActivate("安全删除硬件","关闭(&C)")
ControlClick("安全删除硬件","关闭(&C)","Button3")
ProgressOn("程序正在卸载U盘", "10秒将关闭程序", "0 %")
For $i = 10 to 100 step 10
sleep(1000)
ProgressSet( $i, $i & " %")
Next
ProgressSet(100 , "完成", "卸载U盘成功,请把出U盘")
sleep(500)
ProgressOff()
Exit
;3进度条
ProgressOn("程序正在卸载U盘", "10秒将关闭程序", "0 %")
For $i = 10 to 100 step 10
sleep(1000)
ProgressSet( $i, $i & " %")
Next
ProgressSet(100 , "完成", "卸载U盘成功,请把出U盘")
sleep(500)
ProgressOff()
Exit
各位朋友,请帮一下贝. 请问,难到论坛真的没有会的吗?还是我说的不具体?请各位提教。 回复 1# dnvplj
ProgressOn 放到开始;
ProgressSet 穿插在你所做的卸载动作中间,不需要用For循环,多写几条即可;
ProgressOff 放到最后。
这样,就是你所说的“从开始到结束都显示”。 是从弹出光驱开始显示进度到弹出U盘显示成功吗?那这个ProgressOn不应该放在中间呀? 本帖最后由 dnvplj 于 2012-9-24 12:52 编辑
ProgressOn 放到开始;
ProgressSet 穿插在你所做的卸载动作中间,不需要用For循环,多写几条即可;
ProgressOff 放到最后。
脚本开始时起动了"进度条",但"进度条"不走.请各位朋友帮把上面的3个代码给整合到一起.谢谢了. ProgressOn("程序正在卸载U盘", "10秒将关闭程序", "0 %")
For $i = 10 to 100 step 10
sleep(1000)
ProgressSet( $i, $i & " %")
Next
ProgressSet(100 , "完成", "卸载U盘成功,请把出U盘")
sleep(500)
ProgressOff()
Exit
;3进度条
ProgressOn("程序正在卸载U盘", "10秒将关闭程序", "0 %")
For $i = 10 to 100 step 10
sleep(1000)
ProgressSet( $i, $i & " %")
Next
ProgressSet(100 , "完成", "卸载U盘成功,请把出U盘")
sleep(500)
ProgressOff()
为什么搞两个重复的进度条?
页:
[1]