中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-13 23:57
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 【视觉类】从中间逐渐扩大再变小的方形框框+变色
楼 主 【视觉类】从中间逐渐扩大再变小的方形框框+变色 发表于 2008-05-25 13:08 ·  中国 广东 揭阳 电信
银牌会员
★★★★
SuperCleaner
积分 2,362
发帖 1,133
注册 2008-02-02 21:36
UID 110072
性别 男
状态 离线
::这一版本的编辑---if exist Q523066680

@echo off&mode con cols=60 lines=30 &color 0a
setlocal enabledelayedexpansion
set omax=oooooooooooooooooooooooooooooooooooooooo
set kmax=%omax:o= %
set n=4

:a
set /a n+=4
set /a upkh=15-%n%/4,kleft=30-%n%/2,zk=%n%-4,zkh=%n%/2-2
set leftk=!kmax:~0,%kleft%!
set zk=oo!kmax:~0,%zk%!oo
set hang=!omax:~0,%n%!
for /l %%a in (1,1,%upkh%) do echo.
echo.%leftk%%hang%
for /l %%a in (1,1,%zkh%) do echo.%leftk%%zk%
echo.%leftk%%hang%
echo.%n%
for /l %%a in (1,1,2) do ping -n>nul
cls
if %n%==40 set /a n=4
goto a

[ Last edited by 523066680 on 2008-7-8 at 10:01 PM ]
2 改了一下--从小到大 从大到小 只加了两行 发表于 2008-05-25 13:10 ·  中国 广东 揭阳 电信
银牌会员
★★★★
SuperCleaner
积分 2,362
发帖 1,133
注册 2008-02-02 21:36
UID 110072
性别 男
状态 离线
@echo off&mode con cols=64 lines=32 &color 0a
setlocal enabledelayedexpansion
set omax=oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
set kmax=%omax:o= %
set /a a=0,b=64

:a
if %a% leq 56 (set /a a+=4,n=%a%) else (set /a b-=4,n=%b%)
if %b% equ 0 (set /a a=4,b=60)

set /a upkh=16-%n%/4,kleft=32-%n%/2,zk=%n%-4,zkh=%n%/2-2
set leftk=!kmax:~0,%kleft%!
set zk=oo!kmax:~0,%zk%!oo
set hang=!omax:~0,%n%!
for /l %%a in (1,1,%upkh%) do echo.
echo.%leftk%%hang%
for /l %%a in (1,1,%zkh%) do echo.%leftk%%zk%
echo.%leftk%%hang%
echo.%n%
ping -n>nul
cls
goto a

[ Last edited by 523066680 on 2008-6-3 at 05:08 PM ]
本帖最近评分记录 (共 5 条) 点击查看详情
评分人分数时间
ThinKing +4 2008-05-26 01:19
plp626 +15 2008-05-26 16:47
WANKOILZ +2 2008-05-28 14:13
pusofalse +5 2008-05-28 23:52
26933062 +9 2008-05-29 03:26
3 发表于 2008-05-26 01:19 ·  中国 湖北 武汉 电信
中级用户
★★
积分 471
发帖 207
注册 2007-05-03 14:53
UID 87369
性别 男
状态 离线
不错,加分鼓励一下~~
4 发表于 2008-05-26 07:07 ·  中国 江西 南昌 电信
初级用户
积分 101
发帖 39
注册 2006-11-21 22:04
UID 71280
性别 男
状态 离线
请问里面的
upkh=15-%n%/4,kleft=30-%n%/2,zk=%n%-4,zkh=%n%/2-2
这些数字的比例是怎么算的
可不可以画个圆形
5 发表于 2008-05-26 23:12 ·  中国 重庆 奉节县 电信
中级用户
★★
积分 363
发帖 162
注册 2007-04-22 21:31
UID 86104
性别 男
状态 离线
厉害
6 发表于 2008-05-28 14:14 ·  中国 重庆 渝中区 联通
初级用户
★★
积分 198
发帖 89
注册 2007-09-06 23:22
UID 96746
性别 男
来自 重庆
状态 离线
好看,效果不错,特别是2楼的。
7 发表于 2008-05-28 23:03 ·  中国 广东 韶关 电信
高级用户
★★★
CMD感染者
积分 691
发帖 383
注册 2008-05-23 00:38
UID 119451
性别 男
状态 离线
为什么我看不见效果
8 发表于 2008-05-28 23:15 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
UID 89899
性别 男
状态 离线
Originally posted by radem at 2008-5-28 11:03 PM:
为什么我看不见效果:(

你的系统版本?
你保存的批处理名称?
有没有报错信息?

[ Last edited by HAT on 2008-5-29 at 12:39 PM ]
9 发表于 2008-05-29 18:17 ·  中国 甘肃 兰州 电信
金牌会员
★★★★
积分 4,103
发帖 1,744
注册 2006-01-20 13:00
UID 49241
性别 男
来自 甘肃.临泽
状态 离线
厉害
10 发表于 2008-05-29 18:25 ·  中国 广东 韶关 电信
高级用户
★★★
CMD感染者
积分 691
发帖 383
注册 2008-05-23 00:38
UID 119451
性别 男
状态 离线
Originally posted by HAT at 2008-5-28 11:15 PM:

你的系统版本?
你保存的批处理名称?
有没有报错信息?

[ Last edited by HAT on 2008-5-29 at 12:39 PM ]


1.WIN XPSP2
2.t.bat
3.no!

YYYYY???
11 发表于 2008-05-30 02:04 ·  中国 广东 广州 荔湾区 电信
初级用户
积分 20
发帖 9
注册 2008-05-30 01:41
UID 120050
性别 男
状态 离线
强人
12 发表于 2008-06-01 23:32 ·  中国 湖南 衡阳 祁东县 电信
新手上路
积分 10
发帖 5
注册 2008-03-16 15:40
UID 113131
性别 男
状态 离线
13 我的帖终于有人看了!!高兴! 发表于 2008-06-03 17:16 ·  中国 广东 揭阳 电信
银牌会员
★★★★
SuperCleaner
积分 2,362
发帖 1,133
注册 2008-02-02 21:36
UID 110072
性别 男
状态 离线
我2楼的代码重点是在 红色部分 我想让框框放大又变小,又不想让代码增加太多

那两个if 是我想了很久的成果呢!




个人认为如果要做一个圆形放大 应该先尝试做一个显示 二次函数图像的批处理
我会努力的,不过放暑假后才有的上网了 大家也可以多多尝试啊

以上批处理的要点是---确定中心坐标(横32,竖16),
计算上面空行的行数
计算左边空格数
00中间空格数00 以及这种行的个数
14 看我把它改成彩色版的!(论坛终于开放了!~) 发表于 2008-06-22 12:34 ·  中国 广东 揭阳 电信
银牌会员
★★★★
SuperCleaner
积分 2,362
发帖 1,133
注册 2008-02-02 21:36
UID 110072
性别 男
状态 离线
::这一版本的编辑---if exist Q523066680
@echo off&mode con cols=68 lines=34
setlocal enabledelayedexpansion
set omax=oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
set kmax=%omax:o= %
set /a a=0,b=60
set /a num1=0,num=0
for %%C in (1 2 3 4 5 6) do (
set /a num1+=1
set color!num1!=%%C
)


:a
if %num% leq 5 (set /a num+=1) else set num=0
color !color%num%!

if %a% leq 56 (set /a a+=4,n=%a%) else (set /a b-=4,n=%b%)
if %b% equ 0 (set /a a=4,b=60)

set /a upkh=17-%n%/4,kleft=32-%n%/2,zk=%n%-4,zkh=%n%/2-2
set leftk=!kmax:~0,%kleft%!
set zk=oo!kmax:~0,%zk%!oo
set hang=!omax:~0,%n%!
for /l %%a in (1,1,%upkh%) do echo.
echo.%leftk%%hang%
for /l %%a in (1,1,%zkh%) do echo.%leftk%%zk%
echo.%leftk%%hang%
echo.%n%
for /l %%g in (1,1,8000) do rem
cls
goto a

[ Last edited by 523066680 on 2008-7-14 at 07:45 AM ]
15 发表于 2008-06-25 13:31 ·  中国 广东 电信
高级用户
★★★
积分 740
发帖 373
注册 2008-05-23 14:40
UID 119498
性别 男
来自 中国,广东
状态 离线
用P做这些东西就是CPU占用特高,楼上的那个一开CPU占用就到%60!
论坛跳转: