[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] [巳解决]请教批处理倒计时进度条问题

本帖最后由 whwyd 于 2015-3-26 12:58 编辑

下面这段批处理,进度条只能往前走,▉是一秒一个,一直到60秒60个为止,作为倒计时不太合适,我想让它一开始就有60个▉,然后一秒减一个到0秒全部减完,也就是让进度条倒着走,下面这段程序怎么改啊?请高手指教?
  1. @echo off&mode con cols=114 lines=6
  2. color 70&title 倒计时60秒
  3. :star
  4. set /a work=0,n=0,mo=0,number=0,all=60
  5. set num=
  6. set time=%all%
  7. :check
  8. if %number% GTR %mo% set num=%num%▉&set /a mo=%mo%+1&goto check
  9. cls&echo.
  10. echo                                              ★倒计时: %time% 秒
  11. echo.
  12. CurS /crv 0
  13. if not "%num%"=="" echo       %num%
  14. if not "%num%"=="" echo       %num%
  15. if %time%==0 pause>nul&goto start
  16. ping -n 2 127.1>nul
  17. set /a n=%n%+1
  18. set /a time=%all%-%n%
  19. set /a work=(%n%)*100/(%all%)
  20. set /a number=%work%/2
  21. set /a number=%number%+1
  22. goto check
复制代码
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

本帖最后由 pcl_test 于 2015-3-26 13:07 编辑

回复 1# whwyd
  1. @echo off & setlocal enabledelayedexpansion
  2. mode con cols=132 lines=2
  3. title 倒计时60秒
  4. color 70
  5. set t=60
  6. for /l %%a in (0 1 60) do set s=!s!▉
  7. :begin
  8. cls
  9. echo, !s:~,%t%!(剩余%t%秒)
  10. set /a t-=1
  11. ping -n 2 0 >nul
  12. if %t% lss 0 pause >nul & exit
  13. goto begin
复制代码

TOP

谢谢pcl_test,确实不错,达到了要求,高手。

TOP

pcl_test您好,我想把这句echo  !s:~,%t%!(剩余%t%秒)中的(剩余%t%秒)去掉,出现ECHO 处于关闭状态,怎么解决?谢谢!

TOP

本帖最后由 pcl_test 于 2017-4-10 07:19 编辑

echo, !s:~,%t%!
回复 5# whwyd
2

评分人数

TOP

非常完美,太感谢pcl_test 了。

TOP

返回列表