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

[数值计算] 【已解决】批处理中choice怎么加入倒计时跳动?

本帖最后由 hztccy 于 2025-3-30 18:42 编辑

以下是代码段落
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. ::提示用户选择是否恢复书签
  4. cls
  5. echo.
  6. echo ----------------------------------------------------------
  7. echo  输入数字【1】执行下一步操作
  8. echo ----------------------------------------------------------
  9. echo  输入数字【2】不执行下一步操作
  10. echo ----------------------------------------------------------
  11. echo.
  12. echo.
  13. choice /C 12 /N /T 30 /D 2 /M "请选择【 30 秒后默认结束不恢复旧书签】"
  14. if errorlevel 2 exit  :: 2 = 不恢复
  15. if errorlevel 1 goto 执行  :: 1 = 恢复
  16. pause
复制代码
我想在
  1. choice /C 12 /N /T 30 /D 2 /M "请选择【 30 秒后默认结束不恢复旧书签】"
复制代码
中让【 30 】跳动起来,研究了半天始终无法达成。

大概就是无法达成吧

TOP

大概就是无法达成吧
Five66 发表于 2025-3-29 19:45



    应该是可以的,我记得好久之前看过其他大神的脚本是可以做到倒计时跑起来了,我试了好多代码,始终报错,实在懵逼了

TOP

回复 3# hztccy


  啊 ,一边要倒计时还要一边要接受输入 ,不能多线程不能获取消息 ,vt100的光标移动 + start /b么???

TOP

本帖最后由 microsoft_yaw 于 2025-3-30 11:28 编辑

是这种效果吗
  1. @echo off & setlocal enabledelayedexpansion
  2. set "count=30"
  3. :loop
  4. cls
  5. echo.
  6. echo ----------------------------------------------------------
  7. echo  输入数字【1】执行下一步操作
  8. echo ----------------------------------------------------------
  9. echo  输入数字【2】不执行下一步操作
  10. echo ----------------------------------------------------------
  11. echo.
  12. echo. & choice /C 120 /N /T 1 /D 0 /M "请选择【 !count! 秒后默认结束不恢复旧书签】:"
  13. set /a "count-=1"
  14. if "!errorlevel!" equ "1" (echo 1 & goto :end)
  15. if "!errorlevel!" equ "2" (echo 2 & goto :end)
  16. if !count! gtr 0 (goto :loop) else (echo 3 & goto :end)
  17. :end
  18. echo end
  19. pause
复制代码

TOP

是这种效果吗
microsoft_yaw 发表于 2025-3-30 11:12



    对对对,就是这样的一个效果,我就说之前看别人写出过这样的效果,没道理我怎么找都找不到才对

TOP

感谢大家的分享!学习了

TOP

返回列表