第8部分模块化.pptxVIP

  • 0
  • 0
  • 约3.08千字
  • 约 38页
  • 2018-06-01 发布于上海
  • 举报
第8部分模块化

第八讲 程序设计初步(3);程序设计的三种基本结构: 顺序结构 分支结构 循环结构;一、程序设计为什么要引入模块化;“计算”命令按钮的CLICK事件代码如下:; 将求阶乘的问题写成一个共有的代码,代码如下:;二、模块化的基本思想 ;分解优化。不同的人分解的策略是不一样,因此分解也有好有坏。; (1)精简主程序 提高可读性,同时便于以后程序的维护。 (2)减少重复片段 sub1内的命令原本在主程序会出现两次,而改成调用子程序后,便只出现两次“调用sub1”命令,因此可以减少重复片段,并且以后sub1内的命令若需修改时,只要改一个地方就可以了,而不需要同时修改多处。 ; 在Visual FoxPro中,子程序的结构可分为下列几种: 过程 自定义函数 自定义方法 ;自定义方法;(2)方法的命名规则 VFP中方法的命名规则如下: 由字母、汉字、下划线和数字组成,并且必须以字母、汉字或下划线开头。 可以是1~128个字符。 不能使用vfp的保留字 方法名不要与变量名、数组名相同,取名尽量“见名知意”。 (3)方法建立的步骤 定义方法 编写方法代码。 ;(教材P71) 【例3-15】自定义方法addtxt,将文本框中输入的文本添加到编辑框中,并将文本框中的文本设置为蓝颜色,编辑框中的文本设置为红颜色。 ;1)方法定义 (1)添加新方法addtxt。 打开表单设计器→选择“表单”中的“新建方法程序”命令→打开的“新建方法程序”对话框→在“名称”框中输入方法的名称(如图所示) →单击添加按钮→单击关闭按钮,退出该对话框。;(2)编写addtxt方法的代码。 双击表单空白处,打开“代码”窗口,在“过程”下拉列表中选择“addtxt”,然后编写代码,如图所示。;2)编写控件的事件代码 (1)“添加”命令按钮的“Click”事件代码如下: thisform.addtxt() (2)“关闭”命令按钮的“Click”事件代码如下: thisform.release;3)运行结果 ;2、参数传递与方法的返回值;(2)方法的返回值 如果需要一个返回值,则要在方法代码的结束处增加下面的命令行: RETURN [表达式] 如果缺省表达??,vfp将自动返回.T.。当代码执行到 RETURN命令时,程序流程立即返回到主程序中。;(3)方法的调用形式 在主程序中可以使用以下形式调用方法: ①在表达式中调用方法,例如, y=2+Thisform.New(x)。 ②在赋值语句中调用方法,例如,y=Thisform.New(x)。 ③以等号命令调用方法,例如,=Thisform.New(x)。以该形式调用的方法将舍弃返回值。;(教材P74) 【例3-16】编写分数化简程序,在其中调用求最大公约数的自定义方法gys。 ;编写求最大公约数的自定义方法gys代码 ;编写“=”按钮的Click事件代码: a=Thisform.Text1.Value b=Thisform.Text2.Value IF a*b0 s= Thisform.gys(a,b) Thisform.Text3.value=INT(a/s) Thisform.Text4.value=INT(b/s) ENDIF ;EXM1(p83):利用自定义方法,设计圆面积程序。 ;EXM2(p83):设计如图所示表单,3文本框的初值为0,运行表单后,在3个文本框中都输入1,单击“command1”按钮,标签label2和label3分别会显示什么? ;变量的作用域 ;①私有变量 私有变量的使用原则是:上层程序(主程序)中,所定义的私有变量,可以在下层程序(子程序)中使用,而下层程序(子程序)中,所定义的私有变量,却不可以在上层程序(主程序)中使用;这是因为定义该私有变量的子程序结束时,私有变量便被释放的缘故。; 假设一私有变量在“子程序SUB2”中定义时,则子程序SUB2A、SUB2B也可以使用该私有变量,但主程序与其他子程序(SUB1、SUB1A、SUB1B),则无法使用该私有变量。 ;(教材P75-76) 【例3-17】表单界面如图所示,计算按钮的click事件代码和自定义方法代码如下,当文本框text1、text2中分别输入1、2,单击“计算“按钮,文本框text3、text4中显示什么? ;②全局变量 全局变量的使用范围包括整个应用程序,从主程序到所有子程序都可以使用全局变量的内容;因此通常是用来存放密码、当天日

文档评论(0)

1亿VIP精品文档

相关文档