PB基础语句.doc

上传人:最*** 文档编号:1546752 上传时间:2019-10-25 格式:DOC 页数:15 大小:20.96KB
返回 下载 相关 举报
PB基础语句.doc_第1页
第1页 / 共15页
PB基础语句.doc_第2页
第2页 / 共15页
PB基础语句.doc_第3页
第3页 / 共15页
点击查看更多>>
资源描述
PB 基本语句 循环语句PB 基本语句一、赋值语句赋值语句用于给变量、对象属性赋值,这是应用程序中使用最频繁的语句,其语法格式为:variablename = expression其中:variablename是变量名或对象属性;expression是表达式,其数据类型应该与variablename的数据类型兼容。下面是赋值语句的几个简单示例: Address = 北京 TaxRate = .05 Age = 30 mle.text=北京欢迎你PowerScript的赋值语句不支持多重赋值,也就是说,一条赋值语句只对一个变量赋值,不能同时对多个变量赋值。下面的语句:A=B=0在有些编程语言中同时把A和B均赋值0,但PowerScript中,该语句等价于: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(如果有该子句的话)。例如:IF sle_State.text=BJ THEN MessageBox(欢迎,北京)2多行IF . THEN语句多行IF . THEN语句的语法格式为:IF 逻辑表达式1 THEN 语句1 ELSEIF 逻辑表达式2 THEN 语句2 . . . ELSE 语句nEND IF本语句的执行过程为:计算逻辑表达式1,如果其结果为True,则执行语句1,然后离开整个IF语句;否则计算逻辑表达式2,如果其结果为True,则执行语句2,然后离开整个IF语句;. 如果逻辑表达式的结果都是False,且存在ELSE子句,则执行语句3。例1:从单行编辑框中输入考分,按“输入”按钮再根据考分显示及格或不及格。Integer ss = integer(sle_1.text) /sle_1 text单行编辑框文本If s =90 thenSt_1.text = “优” elseif s=80 then St_1.text = “良”elseif s=70 then St_1.text = “中”elseif s=60 then St_1.text = “及格”elseSt_1.text = “不及格”end if3. CHOOSE CASE语句根据测试表达式的值选择不同的操作,其语法格式为: CHOOSE CASE 测试表达式 CASE 判断表达式执行语句块 CASE 判断表达式语句块. . . CASE 判断表达式语句块 CASE ELSE语句块 END CHOOSE判断表达式可以使用如下的形式:1. 用逗号分隔的一组数据,例如:2,4,72. 用TO表示一个区间范围,例如:2 TO 153. 用IS代表测试值,后跟关系操作符和比较值,例如:IS 304. 组合运用上述三种方法,并用逗号进行分隔,例如:5,6,8 TO 12,IS 20 执行CHOOSE CASE语句时,PowerBuilder将逐条查找CASE,如果找到与测试值相匹配的判断表达式,就执行该CASE后的语句块,然后执行END CHOOSE后的第一条语句。如果CHOOSE CASE语句中包含CASE ELSE子句,则未找到任何匹配的CASE条件时,执行CASE ELSE子句中的语句块。例3:从单行编辑框中输入考分,按“输入”按钮后,再根据考分显示优、良、种、及格或不及格。(用choose case重写例2)integer fString sf = integer(sle_1.text)CHOOSE CASE fCASE IS = 90 / 改进 90 to 100S = 优CASE 80 TO 89 S = 良CASE 70 TO 79 S = 中CASE 60 TO 69 S = 及格 CASE 0 TO 59S = 不及格CASE ELSE S = 输入错,请重新输入!END CHOOSESt_1.text = string(S)三、循环语句各种语言都提供了自己的循环语句,PowerScript也不例外,它的循环语句有三种形式:DO LOOP、FOR NEXT、GOTO,将前两种形式与EXIT和CONTINUE语句配合使用,可以完全抛弃GOTO语句,而且DO LOOP本身有四种格式,丰富多采的表达方式为我们编写清晰流畅的程序提供了有效手段。下面介绍PowerScript循环语句的格式、中途退出循环或中途开始下次循环的方法、以及循环嵌套的概念。1 DO LOOP循环DO LOOP结构提供了一种基于某个条件的灵活的循环方法,它有四种形式,分别为:DO UNTILu LOOPDO WHILEu LOOP (类似c)DO LOOP UNTILu u DO LOOP WHILE (类似c)DO表示循环的开始,LOOP表示循环的结束,condition表示循环条件,是个逻辑表达式,其值为True或False。(1) DO UNTIL LOOP的语法格式为:DO UNTIL 语句块LOOP其执行过程为:先计算条件condition,其结果为False时,执行语句块,接着再检查条件,直到条件的结果为True时退出循环。例:按计算按钮求s = 1+2+3+10。解1:integer i=1, s = 0DO UNTIL i10 s += ii +LOOPst_1.text = string(s)(2) DO WHILE LOOP的语法格式为:DO WHILE 语句块LOOP其执行过程为:先计算条件,其结果为True时,执行语句块,接着再检查条件,直到条件的结果为False时退出循环。例:按计算按钮求s = 1+2+3+10。解2:integer i=1, s = 0DO WHILE i=10 s += ii +LOOPst_1.text = string(s)(3) DO LOOP UNTIL的语法格式为:DO 语句块LOOP UNTIL 其执行过程为:先执行语句块,然后计算条件,如果其结果为False,则继续执行语句块,直到条件的结果为True时退出循环。例:按计算按钮求s = 1+2+3+10。解3:解1与解3完全等价integer i=1, s = 0DO s += ii +LOOP UNTIL i10st_1.text = string(s)(4) DO LOOP WHILE的语法格式为:DO 语句块LOOP WHILE 其执行过程为:先执行语句块,然后计算条件,如果其结果为True,则继续执行语句块,直到条件的结果为False时退出循环。例:按计算按钮求s = 1+2+3+10。解4:解2与解4完全等价integer i=1, s = 0DO s += ii +LOOP WHILE i6 then exit end if next s = s + inext4 CONTINUE(继续循环)功能:在循环语句的循环体中,遇到CONTINUE语句后,将不执行CONTINUE语句后与循环结束前的所有语句,而开始新一轮循环。四、返回语句与终止程序运行 在编写事件处理程序或函数时,使用RETURN语句返回控制给用户或调用函数的地方。当希望终止应用程序的运行时,使用HALT语句。1 RETURN语句RETURN语句立即终止事件处理程序或函数的执行,把控制返回到调用程序。语法格式:RETURN 表达式功能:RETURN语句立即终止事件处理程序或函数的执行,把控制返回到调用程序。表达式值作为事件处理程序或函数的返回值返回。2 HALT语句HALT语句用于终止应用程序的运行,其语法为:HALT CLOSE其中CLOSE是个可选项。当HALT语句不带CLOSE选项时,该语句立即终止应用程序的运行;当HALT语句带CLOSE选项时,执行到该语句后,应用程序先执行应用对象的Close事件处理程序,之后再终止应用程序的运行。OpenWithParm() 功能 带参数打开窗口,与打开窗口的Open()函数相似,OpenWithParm()有两种语法格式: 语法一、带参数打开编程时已知数据类型的窗口对象; 语法二、带参数打开程序运行后才能确定数据类型的窗口对象。 下面分别予以介绍: 语法一、带参数打开编程时已知数据类型的窗口对象语法 OpenWithParm(windowvar,parameter,parent) 参数windowvar:要打开窗口的窗口名,可以使用窗口画笔定义的窗口对象名,也可以使用该窗口对象的某个变量。 Open()函数把打开窗口的引用放置到windowvar变量中 parameter:指定要传递给打开窗口的数据,该数据保存在Message对象的属性中,parameter参数的数据类型必须是下述三种类型之一:String、Numeric、PowerObjectparent:可选项,指定要打开窗口的父窗口,要打开窗口成为父窗口的子窗口,只有当要打开窗口需要成为某个窗口的子窗口时才需要指定该参数。如果应用程序使用Open()函数打开某个子窗口或弹出窗口而又省略了该参数,那么当前活动窗口成为被打开窗口的父窗口返回值Integer。 函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,OpenWithParm()函数返回NULL。 用法消息对象Message有三个属性用于存储OpenWithParm()函数传递给打开窗口的数据。根据parameter参数数据类型的不同,该参数的值保存在Message对象的不同属性中。parameter参数的类型与使用的Message对象属性的对应关系为: parameter参数的类型 使用的Message对象属性 数值类型 Message.DoubleParm PowerObject(比如结构)Message.PowerObjectParm 字符串类型 Message.StringParm 应用程序根据OpenWithParm()函数parameter参数的数据类型,从Message对象的不同属性中提取该函数传送给被打开窗口的值。 语法二、带参数打开程序运行后才能确定数据类型的窗口对象 语法 OpenWithParm(windowvar,parameter,windowtype,parent) 参数 windowvar:指定窗口变量名,Open()函数把打开窗口的引用放置到该变量中parameter:指定要传递给打开窗口的数据,该数据保存在Message对象的属性中,parameter参数的数据类型必须是下述三种类型之一:String、Numeric、PowerObjectwindowtype:string类型,指定要打开窗口的数据类型,该参数指定的窗口数据类型必须与windowvar参数的类型相同或是windowvar类型的后继对象 parent:可选项,指定要打开窗口的父窗口,要打开窗口成为父窗口的子窗口,只有当要打开窗口需要成为某个窗口的子窗口时才需要指定该参数。如果 应用程序使用Open()函数打开某个子窗口或弹出窗口而又省略了该参数,那么当前活动窗口成为被打开窗口的父窗口 返回值 Integer。 函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,OpenWithParm()函数返回NULL。 示例1. 下面的代码从表中选择要打开窗口的类型,然后打开该窗口,并把单行编辑框sle_location的内容放置在消息对象的Message.StringParm属性中: window w_to_open string s_w_name, e_location e_location = sle_location.Text SELECT next_window INTO :s_w_nameFROM routing_tableWHERE . ; OpenWithParm(w_to_open, e_location, s_w_name)
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!