标题: [出题]批处理视觉类动画 [打印本页]
作者: poxi 时间: 2010-7-21 10:06 标题: [出题]批处理视觉类动画
额...不知道这个题目是不是很老了...我很久以前看到的...
用纯P达到下面的效果
====================
[attach]2746[/attach]
(本来有彩的...因为有彩录起来不方便...就黑白的吧...)
====================
目的:掌握变量截取...(我使用变量截取的,有其他方法也可以...)
要求:显示上图效果
====================
新手试试...老鸟略过......
作者: z7r3kslwtj5w_px 时间: 2010-7-21 12:51
[attach]2752[/attach]- @echo off
- title BatHome
- mode con cols=25 lines=4
- SetLocal EnableDelayedExpansion
-
- set "String_Top= > > > > > > > > "
- set "String_Center=bbs.bathome.net"
- set "String_Bottom= < < < < < < < < "
- set "Space= "
- set "Backspace="
- set "End=9"
-
- :: ---------------------- 中间动画 ----------------------
- echo,
- set /p = <nul
-
- for /l %%p in (0 1 14) do (
- set /p =!Space:~%%p!<nul
- set One=!String_Center:~%%p,1!
- for /l %%b in (1 1 !End!) do (
- set /p = !Backspace!!One!<nul
- if !Backspace!== set Backspace=
- ping -n 1 127.1 >nul
- )
- set /a "Var = (Var + 1) %% 2"
- if !Var!==1 (set Backspace=) else set /a End -= 1
- )
-
- :: ---------------------- 上下动画 ----------------------
- for /l %%a in (1 1 1000000) do (
- set String_Top=!String_Top:~-1!!String_Top:~0,-1!
- set String_Bottom=!String_Bottom:~1!!String_Bottom:~0,1!
- echo !String_Top!
- echo !String_Center!
- echo !String_Bottom!
- ping -n 1 127.1 >nul
- cls
- )
复制代码
[ 本帖最后由 z7r3kslwtj5w_px 于 2010-7-21 19:34 编辑 ]
作者: sl543001 时间: 2010-7-21 22:30
路过,代码就不发了.以下截图都为动态动画,无需人工控制干预.
[ 本帖最后由 sl543001 于 2010-7-21 23:39 编辑 ]
作者: wankoilz 时间: 2010-7-21 23:27 标题: 回复 1楼 的帖子
也来一个,不知道怎么弄“移动鼠标显示”啊:- @echo off&SetLocal EnableDelayedExpansion
- mode con cols=25 lines=4&title BatHome
- set "str1=> > > > > > > >"
- set "str2=< < < < < < < <"
- set "sleep=(for /l %%i in (1,1,100) do echo.>nul)&cls"
- set "log=echo bbs.bathome.net"
- :loop
- echo !str1!&%log%&echo !str2!&%sleep%
- echo !str1!&%log%&echo !str2!&%sleep%
- echo !str1!&%log%&echo !str2!&%sleep%
- goto :loop
复制代码
[ 本帖最后由 wankoilz 于 2010-7-21 23:41 编辑 ]
作者: skuny 时间: 2010-12-29 14:19
2楼 中间动画 复杂化了- @echo off
- SetLocal EnableDelayedExpansion
- for /l %%i in (15 -1 1) do (
- set "aaa= !aaa!"
- )
- set /p = <nul
- set "str=bbs.bathome.net"
- for /l %%i in (15 -1 1) do (
- set /p=!aaa!<nul
- set num=%%i
- call set "aaa=%%aaa:~-!num!%%"
- set /a n+=1
- set /a m=n-1
- call set "one=%%str:~!m!,1%%"
- for /l %%j in (1 1 !num!) do (
- set /p "= !one!"<nul
- ping -n 1 127.1>nul
- )
- )
- pause>nul
复制代码
作者: cjiabing 时间: 2011-4-28 23:52
改编人家的,有点意思,不过CPU……- @echo off&setlocal enabledelayedexpansion
- ::可以通过修改两个FOR以及str的空格数量来控制图标往前或者往后移动。
- ::退格键的意义就是cls的意义,只不过它不是全屏清理,而是往前清理。
- echo,
- echo.
- set "str= 《《》》"
- for /l %%a in (1,1,50) do set "t=!t! "
- echo.&set /p= <nul
- echo.弹簧、钟摆、火车
- :lp
- for /l %%a in (1,1,20) do (
- set /a a=6*%%a
- for %%b in (!a!) do set "t1=!t:~%%b!"
- set /p=!str:~%%a!<nul
- for /l %%b in (1,1,500) do echo>nul
- set /p=!t1!<nul
- )
- goto lp
复制代码
作者: mstsc 时间: 2011-5-3 13:07
很好很强大
作者: evenar 时间: 2011-5-28 20:06
嗯 不是 很会 !潜水继续看!!
作者: taofan712 时间: 2017-2-23 22:47
回复 2# z7r3kslwtj5w_px
看代码眼睛都要看花了还没想明白是怎么实现的。。。
作者: taofan712 时间: 2017-3-3 23:50
回复 2# z7r3kslwtj5w_px
时隔几日,终究看明白了,感谢分享
作者: 老刘1号 时间: 2017-3-4 12:51
照抄CNDOS飞入+变色字
不是我写的,我只是搬运工(<v<)- @echo off&setlocal enabledelayedexpansion&cls&color 0f&title Welcome to BatHome!
- mode con: cols=30 lines=3
- set "a= BatHome"
- set b=
- set "c=12345689abcde"
- :c
- for /l %%a in (6,1,28) do (
- set /a d=%random%%%13+1
- call :pp %%a
- )
- goto c
- :pp
- set/p=!a:~-%1!<nul
- set/p=!b:~0,%1!<nul
- color 0!c:~%d%,1!
- goto :eof
复制代码
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |