- 1、本文档共39页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2013-1vfp第8部分(模块化) PPT
第八讲 程序设计初步(3) 要点: 1、建立模块化程序设计的观念 2、掌握自定义方法的使用 3、掌握变量的作用域 程序设计的三种基本结构: 顺序结构 分支结构 循环结构 一、程序设计为什么要引入模块化 模块化设计思想 【例1】设计如图所示表单,计算组合数C(m,n)。其中,m和n是正整数,且mn。 “计算”命令按钮的CLICK事件代码如下: M=thisform.text1.value N=thisform.text2.value p1=1 for i=1 to m p1=p1*i endfor p2=1 for i=1 to n p2=p2*i endfor p3=1 for i=1 to m-n p3=p3*i endfor result=p1/(p2*p3) Thisform.text3.value=result return 数据输入 求m! 求n! 求(m-n)! 分解优化。不同的人分解的策略是不一样,因此分解也有好有坏。 模块化程序就是采用“自顶向下、逐步求精”的方法,从整体到局部,从抽象到具体的分解过程。 (1)精简主程序 提高可读性,同时便于以后程序的维护。 (2)减少重复片段 sub1内的命令原本在主程序会出现两次,而改成调用子程序后,便只出现两次“调用sub1”命令,因此可以减少重复片段,并且以后sub1内的命令若需修改时,只要改一个地方就可以了,而不需要同时修改多处。 三、模块化程序设计的主要优点 在Visual FoxPro中,子程序的结构可分为下列几种: 过程 自定义函数 自定义方法 结构化程序 可视化程序 自定义方法 (1)方法的分类 VFP的方法分为两类:内部方法和用户自定义方法。 内部方法是VFP预制的子程序,可供用户直接调用或修改后使用,如在前面章节中所使用过的Release、SetFocus等方法。 用户自定义方法其实就是用户为某种需要编写的子程序。 1、自定义方法的建立和调用 (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 表单的自定义方法addtxt 表单的内部方法release 文本框的内部方法 3)运行结果 2、参数传递与方法的返回值 (1)参数传递 如果需要方法能够接收参数,则在方法代码开始部分增加下面的命令行: PARAMETERS 形参表 或 LAPRAMETERS 形参表 调用时使用括号将实参括起来: 对象名.方法名(实参表) 说明:见教材P75 (2)方法的返回值 如果需要一个返回值,则要在方法代码的结束处增加下面的命令行: RETURN [表达式] 如果缺省表达式,vfp将自动返回.T.。当代码执行到 RETURN命令时,程序流程立即返回到主程序中。 (3)方法的调用形式 在主程序中可以使用以下形式调用方法: ①在表达式中调用方法,例如, y=2+Thisform.New(x)。 ②在赋值语句中调用方法,例如,y=Thisform.New(x)。 ③以等号
文档评论(0)