WBAT中文演示教程.docx
- 文档编号:5770246
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:39
- 大小:54.99KB
WBAT中文演示教程.docx
《WBAT中文演示教程.docx》由会员分享,可在线阅读,更多相关《WBAT中文演示教程.docx(39页珍藏版)》请在冰豆网上搜索。
WBAT中文演示教程
WBAT中文演示教程
二〇〇九年二月
目录
WBAT对话框工具1
一、关于所有的WBAT功能的信息1
快捷对话框1
快速选择对话框2
提示文字和颜色2
对话框布局2
对话框布局示例2
布局参考3
对话框布局3
对话框布局中的按钮4
菜单对话框4
根据选择的按钮或项目,返回errorlevel4
处理用户输入5
对话框的输入栏5
输入变量5
布局里的复选框5
复选框变量6
对话框布局中的单选框6
单选框变量7
对话框布局中的列表框7
列表框示例7
用键盘选择行7
查看文本文件内容8
文本的显示8
显示文本的区域8
文本显示的属性8
TextTitle屏幕本文标题8
快捷文本(Quicktext)8
用图案/字符串/颜色/CLS来填充(Fill)一个区域9
填充语法9
光标与卷动条9
屏幕的保存与恢复9
Windows字型和调色板10
用户定制的颜色调色板10
屏幕字型10
ANSI控制台驱动10
ANSI控制台驱动10
WbatSTDOUT标准输出11
WbatEL命令11
二、为运行WBAT程序做准备11
WBAT应用程序的安装11
安装WBAT11
安装WBAT文件11
WBAT.INI文件12
忽略INI文件中的设定12
WBAT.INI的文件规格12
WBAT.INI文件里的颜色设定12
环境变量空间13
项目编辑13
三、对话框、菜单、文本布局的设计13
一般信息13
在布局中使用环境变量13
风格样式14
对话框的框架14
对话框的阴影14
对话框标题14
分割线14
对话框的高亮文本14
特别的ESC按钮14
布局中的控件15
对话框输入栏15
布局里的复选框15
复选框变量15
对话框布局中的单选框15
单选框变量16
热键16
文本的输出16
文本显示的属性16
TextTitle——屏幕本文标题17
倒计时显示17
特别的符号17
四、批处理文件中的命令17
WBAT指令,语法17
W.BAT的结构18
W.BAT18
W.BAT如何工作18
通过STDOUT设定变量18
多重命令19
位置和大小19
大小19
颜色19
颜色的指定方法19
布局参考20
默认的布局文件名20
调用本地布局文件的本地批处理20
全局的布局文件20
布局包含在批处理文件中21
默认的扩展名21
高亮条参数21
倒计时21
五、批处理控制21
一般信息21
Errorlevels22
WBAT变量22
按钮变量22
WBATstring22
?
变量22
重新设定变量23
ESCAPE处理23
ESCAPEhandling23
列表处理23
列表变量24
标签24
标签前缀24
六、使用键盘和鼠标24
ESCAPEandequivalents24
一般对话框的处理24
在输入栏中编辑25
刷新键盘缓冲区25
WBAT是一个在DOS中模拟Windows对话框的批处理加强工具。
通过WBAT你可以在你的BAT文件中使用友好的人机对话界面,通过布局,可以方便的把按钮、输入栏、菜单、单选框、复选框、列表框、文本等内容放到任意位置,另外还支持自定义颜色、调色板、字体...
WBAT功能强大,而其自带的演示已经把WABT的各个功能讲述的很详细,所以,你看了这个演示以后,相信你就能使用WBAT来工作了。
当然,该演示多注重功能讲述,对于技巧方面你可以参考里面的源文件内容。
看这个演示前,你应该先掌握有一定的DOS批处理方面的知识。
如果你对DOS的批处理不熟悉,看懂WBAT的使用方法可能有些困难。
本演示教程的英文版是WBAT的作者horst.schaeffer制作。
我在中国DOS联盟论坛(-发出的WBAT对话框工具完美汉化修正版,也是至今找到的唯一一个WBAT演示布局汉化版本。
但是这个版本中有许多显示错误(有些应该显示的命令字符丢失---容易让浏览者看不懂或对命令的使用方法搞错)、很多翻译错误(对原英文翻译失误---有些地方好像是使用机器翻译的)、许多文字笔误(用词方面)、许多版面错误(例如有些地方对话框会挡住不应该挡住的文字)、丢失了许多原版中对文字的高亮显示以及有因汉字乱码而干扰浏览等。
虽然有这些问题,但是WBAT对话框工具完美汉化修正版仍然对我帮助很大,在此对王小云表示感谢。
为了……,我花费了不少时间和精力对这个演示进行了完善,并且在多个地方增加了自动预选到下一个项目的功能,这样你可以在多数情况下,只需按ENTER就可以一路看下去,当然有些地方还需要按ESC或其他按键继续。
因本人英文水平实在不好,所以有些地方翻译的很吃力,肯定有翻译错误的情况,欢迎网友指正(请通知我:
hnfeng@),或者在中国DOS联盟论坛留言,也欢迎大家共同来进一步完善这个演示教程。
WBAT对话框工具
WBAT是一个在DOS中模拟Windows界面的对话框的一个批处理加强工具。
WBAT需要运行在DOS模式下。
WBAT概况:
●可以用按钮(buttons)、输入栏(inputfields)、菜单(menus)、复选框(checkboxes)、单选框(radiobuttons)来方便的制作对话框布局版面,所有的元件均可以自由地安排位置
●快捷对话框(QuickBox)可用于命令行的方式
●列表对话框(Listbox)可用于在批处理中列出多个选项供使用者选择
●具有文本显示(Text)、填充屏幕区域(fill)、清屏(clear)、颜色(color)等功能
●可自定义字体(font)和调色板(palettes)
●默认值和偏爱设置可以保存在WBAT.INI文件中
一、关于所有的WBAT功能的信息
WBAT概览只是粗略地告诉你所有的WBAT功能。
快捷对话框
让我们从一个非常简单的命令开始学习:
wbatboxOK
这是一个暂停的复位按钮,提示用户继续。
在默认情况下,所有的对话框都放置在屏幕中央。
你也可以在屏幕的任何地方放置你的对话框,只要指定对话框左上角的行、列坐标就可以了:
wbatbox21,60continue
如果对话框超出屏幕边缘,没关系,WBAT会自动纠正位置。
如果对话框碰巧遮住你要阅读的内容,你可用拖曳功能移开对话框。
快速选择对话框
现在指定多个选项(按钮),当然你只能从中选择一个:
wbatbox21,40continue,back,tourmenu
选项之间必须用逗号(,)隔开。
在选项里允许包含空格。
你也可以使用热键进行选择(默认是第一个字符,在这个演示里用红色标记)。
在你的批处理文件中,处理用户的选择的方式与用“CHOICE”一样,是通过返回码(errorlevel)识别的。
选择了第一个选项就返回1,第二个则是2,以此类推。
例:
iferrorlevel3gotoTOUR-MENU
iferrorlevel2gotoT-quick
rem"continue"here
切记:
在用GOTO测试返回码时,必须以降序排列errorlevel。
提示文字和颜色
可以把快捷对话框中的提示文字包含在一对双引号里,并放置于按钮选项的前面。
例:
wbatbox19,55"ContinueTour?
"ok,back
你甚至可以使用多行文本,只需在提示文本中插入一个脱字符(^)作为分行标记。
对话框的颜色(boxcolor)可在圆刮号中指定(默认颜色在WBAT.INI中被定义),格式是:
(文本颜色on对话框背景颜色)。
例:
wbatbox19,55(blueonlightbrown)"ContinueTour?
"ok,back
关于Color命令和更多的对话框默认设置(itempre-set)及超时设置(time-out),请参见mainmenu中的Commands。
对话框布局
如果你需要更多的功能而不仅仅是几个按钮,就需要版面布局(layout)以便你能自由地安排文本和控件的位置。
你可使用下面的控件:
●按钮(buttons)或菜单项目(menuitems)
●输入栏(inputfields)
●复选框(checkboxes)
●单选按钮(radiobuttons)
在布局中,所有的控件被[]括起来。
对话框布局一般的命令格式是:
WBATbox@layout.txt:
label
所有box对话框的命令选项是:
对话框的位置(boxposition)、颜色(color)、边框样式(initialbarposition)、超时选项(time-out)。
对话框布局示例
将下列代码保存到layout.txt的:
label标签中:
:
label
请输入你的名字和城市
名字:
[$name,40]
城市:
[$city]
[.]男[.]女
[!
]已满21岁
[OK][cancel]
运行界面如下:
注意:
WBAT的对话框总是以弹出的方式显示的,这意味着当对话框显示前,背景被保存下来,当对话框关闭后,背景得以恢复。
然而,一个特别的fix选项可用于把对话框保留在屏幕上而不关闭。
布局参考
在一个文本文件(textfile)里,你可以有多个布局。
每个布局单元都由标签(label)识别,像在批处理文件中一样。
一个布局单元的结束标志是在下一行的开始位置有个冒号(:
),这通常又是下一个标签的开始。
在WBAT命令中,你可以用文件名和标签来调用布局:
●文件名的前面加一个@符号。
例如:
@dialog.txt
●标签前加一个冒号(:
)。
例如:
:
START
示例:
wbatBOX@dialog.txt:
start
你也可以省略文件名,因为WBAT提供了一个简易的方法,就是使用默认的文件。
另一个方法是调用在批处理文件自身中的布局,只需要这样:
@%0:
label
:
box-other
对话框布局
其他布局功能:
●变量(Variables)可用于布局,像在批处理文件中一样
●可以定义对话框的标题(title)(用不同的颜色显示)
●右上角的关闭按钮[x]是可选的,用于取消或退出(cancel/escape)
●可指定“分割线”(Dividerlines)的颜色
对话框布局中的按钮
按钮可放置于对话框中的任何位置。
按钮上的文字放在[]号中。
示例:
[ok][cancel]
用鼠标单击按钮或在高亮的按钮上按下ENTER键,将关闭对话框,并返回一个按钮的返回码(errorlevel),同时,按钮名字将赋值给变量。
按钮上的文字不能以$或!
开始,因为这些符号被保留用于识别其他的控件。
特别的?
用于标识ESC按钮,按此按钮与按键盘上的ESC键具有同样的功能。
问号不会显示出来。
示例:
[ok][?
cancel]
在这情况下,cancel按钮返回的返回码不是“2”,而是100,就和其他的ESCAPE动作一样。
菜单对话框
Menu只是垂直排列的一些按钮(在一列或多列)。
在一个对话框中按钮背景通常用不同的颜色显示,在这个演示中,按钮通常是灰色(默认的按钮颜色在WBAT.INI中定义),如果你需要一个不可见的按钮(即没有按钮背景,只有移到该位置时才亮显)的一个菜单,就要使用menu指令代替box。
处理方法是相同的。
示例:
WBATmenu@layout.txt:
label
你可以用一个大的对话框来放置详细的菜单,或用简单的关键字来做一个小的对话框。
你可以插入空行,或添加文字。
示例:
:
button-menu[x]
[menu]
[errorlevel]
[variables]
:
运行界面如下图。
根据选择的按钮或项目,返回errorlevel
在你的批处理文件中,可以通过返回的errorlevel来处理用户的选择,就如使用“Choice”命令一样。
示例:
wbatmenu:
button-menu
iferrorlevel100gotoMain;捕捉ESC/[x]
iferrorlevel3gotoB-variables
iferrorlevel2gotoB-errorlevel
remhereiserrorlevel1
:
B-menu
注意:
每个errorlevel值都有唯一的按钮所对应,以防在你的布局里有其他的控件。
处理用户输入
被选的按钮也能被以“按钮名字”的方式返回值,并分配给变量WBAT,默认值被赋给在菜单选项中选的第一个字(Word)。
在批处理文件中,简单的GOTO%WBAT%就可以跳转到用选项命名的标签行。
注意:
当使用命令CALLW.bat来替代WBAT时,WBAT才可用来产生环境变量。
这种特殊的结构在WindowsNT/2000下运行的很好,在Windows系统的命令行窗口下运行很安全。
对话框的输入栏
输入栏用$符号标记,并在$后面跟一个变量名,这将返回输入的字符串。
示例:
[$city]
输入字符串的长度由[]括号所包含的的空间决定。
可以指定不同的长度(更长或更短),也可定义附加的选择项:
U强制大写
P密码输入模式
!
必须输入(除非对话框被ESC关闭)
示例:
[$name,40,U!
]
如果输入的长度超过可见栏位大小,前面字符将向前移出可见栏位。
注意:
只做一个(没有按钮的)输入栏也是可以的。
在这种情况下,按回车键将关闭对话框。
输入变量
为了处理输入,你必须用下面的语句,让WBAT能返回变量:
CALLW.BATbox....
在对话框被显示之前,你也可分配一个词首字母/默认字符串给变量。
但如果你想要一个空的输入栏,就需要先清除变量值。
注意,WBAT将会移除输入的字符串后面的空格。
布局里的复选框
复选框用于触发选项的ON/OFF,在方括号里放置一个感叹号,就可以在对话框里创建一个复选框。
示例:
[!
]includesubdirectories
在这个例子里,只有复选框本身能被触发。
要包括触发选项的关联文本,请将文本也包括进[]号里面。
示例:
[!
includesubdirectories]
注意:
在键盘上用空格键来触发复选框。
复选框被触发为ON时显示的符号可在WBAT.INI的CheckSymbol="x"中定义(默认符号:
“x”)。
复选框示例:
:
checkbox-example
"Checkbox"[x]
[!
]includesubdirectories
[!
]allupercase
[ok][cancel]
:
:
checkbox-var
运行界面如图:
复选框变量
在一个对话框里可以有9个复选框。
每个复选框的返回值均为0(off)或1(on),并将第一个返回值分配给变量WCB1,第二个分配给WCB2,……第九个分配给WCB9,此类推。
下面是一个处理返回变量值的例子:
setoption=
if%WCB1%==1setoption=/S
注意:
在对话框被显示之前,可以为变量指定初始值。
一个空的变量或任何无效的变量都将赋于0(OFF)。
对话框布局中的单选框
单选框就是在提供的几个选择框中,只有一个可以被选择,其他的自动关闭。
单选框用[]括号里加一个句点[.]表示。
示例:
[.]LFN[.]shortDOSname
对于单选框的提示文本,也可以包括到[]括号里去。
示例:
[.leftaligned]
[.rightaligned]
[.centred]
注意:
在键盘上用空格键可将高亮的选项激活为ON。
激活为ON时显示的符号可在WBAT.INI的RadioSymbol="*"中定义。
(默认值:
*)。
请看一个完整的示例:
:
radio-example"RadioButtons"[x]
[.leftaligned]
[.rightaligned]
[.centred]
[ok]
运行界面如图:
单选框变量
你可以定义一套多达9个单选按钮(最小量是2)的单选框。
当一个单选按钮被选择时,将返回单选按钮的号码(1,2,3,……),并赋于变量WRB。
下面是处理单选框返回变量的例子:
setalign=left
if%WRB%==2setalign=right
if%WRB%==3setalign=center
注意:
在对话框被显示之前,可以为变量指定初始值。
一个空的或任何无效的变量都将被赋于1(第一个)。
对话框布局中的列表框
一个列表看起来像一个菜单,但他们是有区别的:
●在布局中不用方括号[]。
(整行被使用)
●借助卷动功能可显示多达32Kb的文本。
这意味着你可以很容易的在批处理过程中从一个文本文件中取得列表,例如:
WBATlist@file.ext[:
label]
你可以象BOX命令那样指定标签,但是如果你省略这个标签,整个文件内容都将被列出。
符号@((用来引导文件名)在LIST命令中并不是强制要求的。
列表框示例
该例中显示当前目录的文件列表以供使用者选择一个文件。
卷动:
使用光标键(上/下)或用鼠标单击[或按住]滚动条的顶端或底端箭头用来翻页。
下面来看看列表的命令:
DIR*.*/b/a-d/one>%temp%\temp.txt
callW.BATlist3,60%temp%\temp.txt
wbatbox8,53"你的选择是:
^**%wbat%**"again,continue
del%temp%\temp.txt
用键盘选择行
你可以使用键盘选择一个行就像在Windows浏览器中那样。
如果你键入一个或多个字符,光标就会跳到下一个(你键入的)字符或字符串处。
如果在下面列表中没有找到,将从顶端重新开始搜寻。
当你键入多个字符时,击键之间的间隔不能超过一秒钟(否则,搜索字符串会复位)。
空格键也会使之重新复位。
最大的暂停时间可以在WBAT.INI文件中[general]部分的ListHotTicks字段中,通过调整ticks的值来改变(18ticks=1秒)。
例如:
ListHotTicks=36;2秒
查看文本文件内容
你可以使用WBATLIST来查看较小的文本文件的内容。
注意:
最大的文件大小是32Kb,而且行宽是76bytes,超长的部分将被截去。
下面是显示WBAT.INI文档的例子。
wbatlistWBAT.INI
文本的显示
你可以用TYPE或ECHO在屏幕上显示文本,但是WBATtext命令还提供一些额外的功能:
●可在屏幕上的任意位置输出
●可以通过在布局文件中的标签读出文本内容(就象对话框那样)
●文本中可以使用变量%...%,显示时将显示该变量当前的值
●可使用颜色、标题功能
默认情况下,文本将以当前的颜色显示在屏幕上。
这意味着在文本输出之前你要用你想要的颜色清除屏幕。
WBAT可从指定的布局文件中通过标签来读出文本,如果文件中没有标签,将读出整篇文本文件。
但是,只有一个屏幕的文本可被显示,多余的将不能显示,而且没有卷动条。
示例:
WBATlist2,4:
info
WBATtext@file.txt
显示文本的区域
文本是显示在一个矩形区域内的,这个矩形的大小由最长的行和行的数目决定。
当你用不同的背景色显示文本时,你只需注意这一点,例如,要实现这样的一个本文显示,用如下的命令格式:
wbattext7,8(blueonlightbrown)@:
text2example
可加入空行和左边/右边的空格来调整矩形区域的大小。
跟通常一样,左上角的位置被定义为矩形区域的位置。
默认值是1,1。
如果文本区域超过右下角的边缘,矩形区域将会被调整到适合的位置。
超过屏幕大小的文本将不能显示出来。
刮弧里的颜色是可选的。
文本显示的属性
你可以在布局中使用两种特殊的颜色来标记行或段落。
这些颜色可在WBAT.INI中定义:
TextHiScreenTextHighlight
要使文本或段落高亮,可在文本或段落的开始及结束处插入(~)符号。
这个符号也可以在INI文件的[general]里定义HiSymbol字段来改变。
TextTitle屏幕本文标题
放在最左一列的#符号标记了标题行(标题行并不只是在页的顶端,可以在任何地方)。
标题的宽度是整个文本的宽度,由最长的行决定。
要强制一个更长的标题,可填入空格或在结束处用(^)标记。
快捷文本(Quicktext)
像对话框命令那样,也有一种“快捷文本模式(Quicktext)”,用来显示一个简短的信息,就象指定命令参数一样。
这就非常方便的用指定的颜色来显示信息或标题,例如:
wbattext11,30(+whiteonred)"Pls.ignorethismessage!
"
用图案/字符串/颜色/CLS来填充(Fill)一个区域
你可以用任何字符或字符串填充一个矩形区域,或者只是改变颜色。
一个特殊的选项可以使下面的一行错位显示字串。
看下面的例子。
使用FILL命令也可以清除屏幕:
wbatfill""
CLS指令起到同样的效果:
wbatCLS
也可以指定颜色(默认由WBAT.INI定义):
wbatCLS(whiteonblue)
填充语法
语法:
wbatFILLposition(dimensions)(colors)"string"+s
参数说明:
position左上角的行坐标和列坐标,默认是1,1
dimensions填充区域的宽和高(总是在刮弧中)。
默认值:
屏幕边缘。
colors颜色。
默认值:
屏幕颜色
string将会在每行中被重复的字或字符串;空格""可用来清除;字串省略时将只改变颜色(保留该位置原来的文本)。
如demo中的灰色填充区域
+s在每一个随后的行中使字符错位的数量
若填充区域超过屏幕边缘,将会被剪切。
光标与卷动条
当想让其他程序的运行结果输出到屏幕指定的行,就需要使用光标命令。
WBAT不使用DOS光标(除非使用CLS命令使光标复位到初始状态)。
例如,如果你的文本输出到屏幕的上半部分,而后续的程序和DOS命令输出到屏幕的中部,你可以将光标设置到第13行:
wbatcursor13
你也可以从当前行或任何指定的行开始,发送移行命令,当光标到达底部时,屏幕将会卷动。
示例:
wbatcursor25+5
这将移动光标到底行,并卷动5个行。
屏幕的保存与恢复
WBAT的对话框(box/m
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- WBAT 中文 演示 教程
![提示](https://static.bdocx.com/images/bang_tan.gif)