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

[特效代码] [讨论]再谈批处理模拟2000开机动画效果

相应flash动画懒得做了,表述一下好了。

开始时,窗口显示成:
||||||||||||||||||||||||||||||||||||||||||
然后,第一个|换成>
>|||||||||||||||||||||||||||||||||||||||||
下一回:
>>||||||||||||||||||||||||||||||||||||||||
继续:
>>>|||||||||||||||||||||||||||||||||||||||
最后:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

原来已经有人写了相应的代码,但是,都是通过cls清屏来实现,使窗口看起来有震动的现象,效果不是很逼真...
不知道各位有何高见呢?

::
  1. @echo off&for /l %%a in (1 1 18) do echo\
  2. set /p=       <nul
  3. for /l %%i in (1 1 70) do set /p=^|<nul
  4. for /l %%i in (1 1 70) do set /p=<nul
  5. for /l %%i in (1,1,70) do (
  6. set/p=^><nul
  7. for /l %%a in (1 1 1000) do ver>nul
  8. )
  9. echo\&echo\&pause
复制代码
技术问题请到论坛发帖求助!

TOP

  玩了那么久,今天才发现退格符号居然能跑到字符串头部去删除字符,对这段代码的执行过程百思不得其解:

  首先生成70个|,然后,用70个退格符号去删除,那么以前的字符串应该都不能看到了才是,怎么还会停留在屏幕上呢?在第二个for后加上pause查看显示结果,发现"按任意键继续..."的提示居然跑到那70个|前面去了,真是倍感疑惑;就算是光标能定位到那70个|前面,最后一个for生成的>应该把那70个|往后挤才对啊,怎么会逐个"吃"掉后面的|呢?

  看来,set /p=<nul 语句和退格符号的执行机制充满了神秘啊。

TOP

呵呵,这个你就发现的比较晚了吧?!
退格键虽然能够“删除”字符,但是已经显示出来的字符它并不能真正的“清空”(不然的话,倒是可以实现很漂亮的动画效果了...)

TOP

其实退格键并不是删除字符,只是将光标定位到前面,若没有新的内容显示出来,前面显示的仍可以看见.
但新的内容会覆盖原来的内容.
技术问题请到论坛发帖求助!

TOP

同意楼上的

能讲解下那几个命令不?
ㄗs:A good programming is 99% sweat and 1% coffee!--①個亾

============ >   hi.baidu.com/novaa   <============

TOP

set /p=^|<nul的作用就是显示一个 |
注意:这里的|前面还有一个^,目的是将|转义,也就是告诉电脑,这个是一个字符而已,否则,电脑则会把它当成 管道符使用
for /l %i in (1 1 10) do set /p=^|<nul的作用就是显示 在一行上显示 10个|

set /p=<nul
这里指的是退格键

set/p=^><nul的意思同上

TOP


懂了
谢谢了
ㄗs:A good programming is 99% sweat and 1% coffee!--①個亾

============ >   hi.baidu.com/novaa   <============

TOP

原帖由 随风 于 2007-11-8 23:40 发表
::@echo off&for /l %%a in (1 1 18) do echo\
set /p=        

不过,话又说回来,通过大量重复的命令的方法来 达到延时的效果是不是有点 “夸张” 呢?呵呵,不过倒是一种方法之一...

TOP

呵呵
懂退格符的用法了
哈哈
ㄗs:A good programming is 99% sweat and 1% coffee!--①個亾

============ >   hi.baidu.com/novaa   <============

TOP

ping 127.1 -n 1 >nul 延时
不过,windows2000开机动画是
>>>>>>>>>|||||||||||||||||||吗?
我记得是>>>>>>>>>>============

TOP

退格键怎么打出来啊我怎么无论如何都打不出来啊

TOP

在CMD霞输入EDIT
百度下吧。我也忘记了。
ㄗs:A good programming is 99% sweat and 1% coffee!--①個亾

============ >   hi.baidu.com/novaa   <============

TOP

edit 下,直接按下 退格 键,然后将那个符号复制下来就可以了

TOP

终于找到了可以在同一行动态显示字符的方法:)

TOP

返回列表