我试着做简单的代码,但看起来很漂亮:如果可能的话,我想把这些代码组合成代码吗,但我不知道怎么做
call :ColorText 0a "Green"
set "Center=Code Options" & call :CenterText Center strLen每个工作分别很好,但我想将两者结合起来,使文本以中心和颜色。
编辑
我想让文字“代码由ZeE”是绿色的,这是代码
@echo off
setlocal enabledelayedexpansion
SETLOCAL EnableDelayedExpansion
for /F "tokens=1,2 delims=#" %%a in ('"prompt #$H#$E# & echo on & for %%b in (1) do rem"') do (
set "DEL=%%a"
)
title New Title
:: color 2
mode 120,30
set "cmdwidth=120"
cls
echo.
:Display
echo.
echo.
echo.
echo.
echo.
echo.
echo.
set "Center=-----------------------------" & call :CenterText Center strLen
set "Center=Code By ZeE" & call :CenterText Center strLen
set "Center=-----------------------------" & call :CenterText Center strLen
Call :ColorText 0a "lol"
echo.
pause
:CenterText
if not "!%1:~%len%!"=="" set /A len+=1 & goto :CenterText
(endlocal & set %2=%len%)
goto CenterTextDisplay
:AddSpace
set "spaces=%spaces% "
goto :eof
:CenterTextDisplay
set /a "indent=(cmdwidth - strLen)/2"
set "spaces= "
for /l %%a in (1,1,%indent%) do call :AddSpace
echo %spaces%%Center%
set "len=0"
goto :eof
:ColorText
echo off
<nul set /p ".=%DEL%" > "%~2"
findstr /v /a:%1 /R "^$" "%~2" nul
del "%~2" > nul 2>&1
goto :eof发布于 2019-07-23 10:57:23
在:CenterText过程中,更改
echo %spaces%%Center%至
if "%~3" == "" (
echo %spaces%%Center%
) else (
Call :ColorText %~3 "%spaces%%Center%"&echo(
)然后,在:CenterText过程call中添加第三个参数(颜色代码)可能会有所帮助:
set "Center=Code By ZeE" & call :CenterText Center strLen 0a
rem ^^https://stackoverflow.com/questions/57160981
复制相似问题