Visual FoxPro 6.0程序设计教程(丁爱萍) 第5章

上传人:E**** 文档编号:89353645 上传时间:2019-05-23 格式:PPT 页数:31 大小:125.50KB
返回 下载 相关 举报
Visual FoxPro 6.0程序设计教程(丁爱萍) 第5章_第1页
第1页 / 共31页
Visual FoxPro 6.0程序设计教程(丁爱萍) 第5章_第2页
第2页 / 共31页
Visual FoxPro 6.0程序设计教程(丁爱萍) 第5章_第3页
第3页 / 共31页
Visual FoxPro 6.0程序设计教程(丁爱萍) 第5章_第4页
第4页 / 共31页
Visual FoxPro 6.0程序设计教程(丁爱萍) 第5章_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《Visual FoxPro 6.0程序设计教程(丁爱萍) 第5章》由会员分享,可在线阅读,更多相关《Visual FoxPro 6.0程序设计教程(丁爱萍) 第5章(31页珍藏版)》请在金锄头文库上搜索。

1、第5章 选择结构程序设计,5.1 条件表达式 5.2 条件选择语句 5.3 提供简单选择的控件 5.4 计时器与微调器 5.5 键盘事件,选择结构是计算机科学用来描述自然界和社会生活中分支现象的重要手段。其特点是:根据所给定的条件为真(即条件成立)与否,而决定从各实际可能的不同分支中执行某一分支的相应操作,并且任何情况下总有:“无论分支多寡,必择其一;纵然分支众多,仅选其一”的特性。,5.1 条件表达式,在条件语句中作为判断依据的表达式称为“条件表达式”,条件表达式的取值为逻辑值:真(.T.、.t.)或假(.F.、.f.)。 根据“条件”的简单或复杂程度,条件表达式可以分为两类:关系表达式与逻

2、辑表达式。,5.1.1 关系运算符与关系表达式,关系表达式是指用关系运算符将两个表达式连接起来的式子(例如x 0),关系运算符又称比较运算符,用来对两个表达式的值进行比较,比较的结果是一个逻辑值(.T. 或 .F.),这个结果就是关系表达式的值。 VFP提供的关系运算符有8种,见表5-1。,表5-1 VFP中的关系运算符,5.1.2 逻辑运算符与逻辑表达式,逻辑表达式是指用逻辑运算符连接若干关系表达式或逻辑值而成的式子。如不等式:2 x 10可以表示为:2 = x AND x = 10。逻辑表达式的值也是一个逻辑值。 VFP提供的逻辑运算符有以下3种,见表5-2。,表5-2 逻辑运算符,逻辑运

3、算的运算规则,见表5-3。,表5-3 逻辑运算真值表,5.1.3 运算符的优先顺序,表5-4 运算符的优先顺序,5.2 条件选择语句,5.2.1 单条件选择语句IF,单条件选择语句IF实现的是最常用的双分支选择,其特点是:根据所给定的选择条件(条件表达式)的值为真与否,来执行相应的分支。,1. IF语句的语法格式 单条件选择语句IF的语法格式为: IF 条件 语句列1 ELSE 语句列2 ENDIF,说明: (1) 如果条件为真(.T.),就执行语句列1。如果条件为假(.F.),若有ELSE子句,则程序会执行ELSE部分的语句列2;若无ELSE子句,则程序会直接转到ENDIF之后的语句继续执行

4、。 (2)语句列1和语句列2中还可以包含IF语句,称为IF语句的嵌套。要注意,每次嵌套中的IF语句必须与ENDIF成对出现。,2. 使用IIF函数 还可以使用IIf函数来实现一些比较简单的选择结构。IIf函数的语法结构为: IIf(条件,真部分,假部分) 语句y = IIf(条件, 真部分, 假部分) 相当于: IF 条件 y = 真部分 ELSE y = 假部分 ENDIF,3. IF语句的嵌套,如果在IF语句中操作块a1块(语句列1)或a2块(语句列2)本身又是一个IF语句,则称为IF语句的嵌套。,5.2.2 多分支条件选择语句DO CASE,多分支选择结构的根本特点是:从多个分支中,选择

5、第一个条件为真的路线作为执行的路线。,DO CASE语句的语法格式为: DO CASE CASE条件1 语句列1 CASE条件2 语句列2 . OTHERWISE 其他语句列 ENDCASE,说明: (1) 在执行DO CASE语句时,依次判断各条件是否满足。若条件1的值为真(.T.),就执行相应的 语句列1,直到遇到下一个CASE、OTHERWISE或ENDCASE。 (2) 相应的语句列1执行后不再判断其他条件,直接转向ENDCASE后面的语句。因此,在一个DO CASE结构中,最多只能执行一个CASE子句。 (3) 如果没有一个条件为真,就执行OTHERWISE后面的其他语句列,直到EN

6、DCASE。如果没有OTHERWISE,则不作任何操作就转向ENDCASE后面的语句。,5.3 提供简单选择的控件,5.3.1 命令按钮组,如果表单上需要使用多个命令按钮,可以将这些命令按钮组合为一组,即命令按钮组(Commandgroup)。,1. 命令按钮组 命令按钮组是一个容器对象,其中包含命令按钮。 命令按钮组的Value属性指示单击了那个按钮。 命令按钮组的ButtonCount属性用来设置命令按钮组中按钮的个数,ButtonCount属性的默认值为2。,2. 按钮组生成器,利用按钮组生成器可以更方便地设计命令按钮组。 (1) 用鼠标右键单击命令按钮组控件CommandGroup1,

7、在弹出菜单中选择“生成器”,打开“命令组生成器”。 (2) 在“按钮”选项卡中,修改“按钮的数目”,再修改按钮的“标题”(Caption属性)。 (3) 在“布局”选项卡中指定命令按钮组的排列方式,如水平或垂直、有无边框等。 (4) 最后单击“确定”按钮退出命令组生成器。,5.3.2 选项按钮组,1. 选项组与选项组生成器 选项按钮组是一组相互排斥的选项按钮(或称为单选按钮)。一般来说,选项按钮总是成组(选项按钮组)出现,用户在一组选项按钮中必须选择一项,并且最多只能选择一项。当某一项被选定后,其左边的圆圈中出现一个黑点。,创建选项按钮组时,系统仅提供两个选项按钮。通过改变按钮数(Button

8、Count)属性,可以增加更多的选项按钮。 选项按钮组是一个容器类控件,设计时,用鼠标右键单击选项按钮组,从快捷菜单中选择“编辑”。此时,选项按钮组的周围出现浅色边界,即可对选项按钮组内的选项按钮进行编辑了。 设计选项组最方便的办法是利用“生成器”。,2. 选项组的图形方式 可以将选项组设计成图形按钮的形式。,5.3.3 复选框,复选框(CheckBox)的左边有一个“”。复选框列出可供用户选择的选项,用户根据需要选定其中的一项或多项。当某一项被选中后,其左边的小方框中就多了一个对号“”。 复选框的Caption属性可以指定出现在复选框旁边的文本,而Picture属性用来指定当复选框被设计成图

9、形按钮时的图象。,复选框的状态由其Value属性决定: 0或 .F. 假 1或 .T. 真 2或 .NULL. 暗,5.4 计时器与微调器,5.4.1 使用计时器,计时器(Timer)控件能有规律地以一定的时间间隔激发计时器事件(Timer)而执行相应的事件代码。计时器控件在设计时显示为一个小时钟图标,而在运行时并不显示在屏幕上,通常用标签来显示时间。,计时器控件的主要属性见表5-8。,表5-8 Timer控件的主要属性,Interval(时间间隔)属性是一个非常重要的属性,表示两个计时器事件之间的时间间隔,其值以毫秒(ms)为单位,介于064767ms之间,所以最大的时间间隔约为1.5min

10、。当Interval为0时表示屏蔽计时器。如果希望每一秒产生一个计时器事件,那么Interval属性值应设为1000,这样,每隔1000ms(即1秒)就激发计时器事件,从而执行相应的Interval事件过程。,5.4.2 使用微调器,微调器(Spinner)控件可以在一定范围内控制数据的变化。除了能够用鼠标单击控件右边向上和向下的箭头来增加和减少数字以外,还能象编辑框那样直接输入数值数据。,微调器的主要属性有: (1) KeyboardHighValue和KeyboardLowValue属性:用来控制用户通过键盘输入的值。 (2) SpinnerHighValue和SpinnerLowValu

11、e属性:用来控制用户通过鼠标单击箭头获得的值。 (3) Interval属性:用来设定数值增加或减少的量。要颠倒箭头的功能(向上箭头减少,向下箭头增加)可以把Interval设为负数。,5.5 键盘事件,在VFP中则使用键盘事件(KeyPress)来响应各种按键操作。通过编写键盘事件的代码,可以响应和处理大多数的按键操作、解释并处理ASCII字符。 KeyPress事件当用户按下并松开某个键时发生。其语法为: LPARAMETERS nKeyCode, nShiftAltCtrl 说明: (1) nKeyCode是一个数值,一般表示被按下字符键的ASCII码。 (2) nShiftAltCtrl 参数表示按下的组合键(Shift、Ctrl、Alt)。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号