PB基础语句

  • 格式:doc
  • 大小:29.00 KB
  • 文档页数:13

精心整理
PB 基本语句 循环语句
PB 基本语句
一、赋值语句
赋值语句用于给变量、对象属性赋值,这是应用程序中使用最频繁的语句,其语法⑵ A=(B=0)
其意义为,检查B 等于0是否成立,成立时将TRUE 赋给变量A ,否则把FALSE 赋给变量A 。

如果A 不是Boolean 类型的变量,则上述语句将引起编译错误。

二、条件语句
IF 语句有两种形式,下面我们按照从简单到复杂的次序逐一介绍。

1. 单行IF ... THEN语句
单行IF ... THEN语句的格式为:
IF逻辑表达式THEN语句1 [ELSE语句2]
单行IF ... THEN语句书写时整条语句写在一行上,当逻辑表达式的结果为True时执行语句1,否则执行语句2(如果有该子句的话)。

例如:
2
多行
IF
????
. . .??
,然后
2,然
执行语句3。

例1:从单行编辑框中输入考分,按“输入”按钮再根据考分显示及格或不及格。

Integer s
s = integer(sle_1.text)?????? //sle_1 text单行编辑框文本
If s < 60 then
?? St_1.text = “不及格”?? // St_1.text静态编辑框文本
Else
?? St_1.text = “及格”
End if
例2:从单行编辑框中输入考分,按“输入”按钮后,再根据考分显示优、良、中、及
else
end if
3. CHOOSE CASE语句
根据测试表达式的值选择不同的操作,其语法格式为:
CHOOSE CASE 测试表达式
?? ?? CASE 判断表达式
执行语句块
?????? [CASE 判断表达式
语句块
. . .
??????? CASE 判断表达式
语句块
语句块
1.
2. 用
3. 用
4.
执行

匹配的
例3:从单行编辑框中输入考分,按“输入”按钮后,再根据考分显示优、良、种、及格或不及格。

(用choose case重写例2)
integer f
String s
f = integer(sle_1.text)
CHOOSE CASE f
CASE IS >= 90??? // 改进90 to 100
S = "优"
CASE 80 TO 89
?? S = "良"
S = "中
S = "
S = "
S = "
式:
语句配合使用,可以完全抛弃GOTO语句,而且DO …LOOP本身有四种格式,丰富多采的表达方式为我们编写清晰流畅的程序提供了有效手段。

下面介绍PowerScript循环语句的格式、中途退出循环或中途开始下次循环的方法、以及循环嵌套的概念。

1 DO LOOP循环
DO LOOP结构提供了一种基于某个条件的灵活的循环方法,它有四种形式,分别为:?DO UNTILu <条件>… LOOP
?DO WHILEu <条件> … LOOP (类似c)
?DO …LOOP UNTIL u <条件>
u DO …LOOP WHILE <条件> (类似c)
DO
??
LOOP
解1:
i ++
LOOP
st_1.text = string(s)
(2) DO WHILE … LOOP的语法格式为:
DO WHILE <条件>
语句块
LOOP
其执行过程为:先计算条件,其结果为True时,执行语句块,接着再检查条件,直到条件的结果为False时退出循环。

例:按计算按钮求s = 1+2+3+ (10)
解2:
i ++
LOOP
语句块
例:按计算按钮求s = 1+2+3+ (10)
解3:解1与解3完全等价
integer i=1, s = 0
DO
?? s += i
i ++
LOOP UNTIL i>10
st_1.text = string(s)
(4) DO … LOOP WHILE的语法格式为:
DO???
语句块
解4
DO
i ++
实际上,只需要从前两种和后两种结构中各取其一就能表达所有的逻辑关系,但为了更清晰地表达条件,PowerScript还是提供了四种结构。

2 FOR NEXT循环
FOR … NEXT是个循环次数确定的循环结构,它使循环体内的语句执行规定的次数,其语法结构为:
FOR varname = start TO end [STEP increment]???
Statementblock
NEXT
其中,varname是循环变量,可以是任意的数值类型,start、end分别是循环变量的初值和终值,increment是每次循环后循环变量的步长增量(缺省值为1),。

解5:
next
3 EXIT
执行该语句后,程序的控制权转至循环语句后的语句,执行该语句后,程序的控制权转至循环语句后的语句。

在嵌套循环的情况下,EXIT语句退出当前层循环,而不是所有循环。

功能:执行该语句后,程序的控制权转至循环语句后的语句。

例:下列程序运行后,变量s中的值是多少?
integer i, j,s=0
for i=1 to 10
for j=1 to 10
???? if j>6 then
???? exit
next
语???
功能:RETURN语句立即终止事件处理程序或函数的执行,把控制返回到调用程序。

表达式值作为事件处理程序或函数的返回值返回。

2 HALT语句
HALT语句用于终止应用程序的运行,其语法为:HALT {CLOSE}
其中CLOSE是个可选项。

当HALT语句不带CLOSE选项时,该语句立即终止应用程序的运行;当HALT语句带CLOSE选项时,执行到该语句后,应用程序先执行应用对象的Close事件处理程序,之后再终止应用程序的运行。

OpenWithParm()
功能
参数
Open()
用程序使用Open()函数打开某个子窗口或弹出窗口而又省略了该参数,那么当前活动窗口成为被打开窗口的父窗口返回值Integer。

函数执行成功时返回1,发生错误时返回-1。

如果任何参数的值为NULL,OpenWithParm()函数返回NULL。

用法消息对象Message有三个属性用于存储OpenWithParm()函数传递给打开窗口的数据。

根据parameter参数数据类型的不同,该参数的值保存在Message对象的不同属性中。

parameter参数的类型与使用的Message对象属性的对应关系为:parameter参数的类型? ? ? 使用的Message对象属性
数值类型? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Message.DoubleParm
语法
参数
parent:可选项,指定要打开窗口的父窗口,要打开窗口成为父窗口的子窗口,只有当要打开窗口需要成为某个窗口的子窗口时才需要指定该参数。

如果
应用程序使用Open()函数打开某个子窗口或弹出窗口而又省略了该参数,那么当前活动窗口成为被打开窗口的父窗口
返回值
Integer。

函数执行成功时返回1,发生错误时返回-1。

如果任何参数的值为NULL,OpenWithParm()函数返回NULL。

示例1. ? 下面的代码从表中选择要打开窗口的类型,然后打开该窗口,并把单行编辑框sle_location的内容放置在消息对象的Message.StringParm属性中:。