VFP课件第六章面向对象的程序设计.doc

上传人:jian****018 文档编号:9666448 上传时间:2020-04-07 格式:DOC 页数:40 大小:767.50KB
返回 下载 相关 举报
VFP课件第六章面向对象的程序设计.doc_第1页
第1页 / 共40页
VFP课件第六章面向对象的程序设计.doc_第2页
第2页 / 共40页
VFP课件第六章面向对象的程序设计.doc_第3页
第3页 / 共40页
点击查看更多>>
资源描述
第六章 面向对象的程序设计 表单设计就是面向对象的程序设计方法。面向对象的程序设计方法中的一些简单概念: 1、类和对象:类:是一组具有公共的方法(成员函数)和一般性的对象的描述。它是对象的原型。对象:是类的具体实例,是一个客观存在的实体。比如:“人”就是一个类,而张三同学是人的一个具体实例,可以理解为人这个类的对象。在VFP中,每个控件其实都是一个类,而我们在表单中放置一个控件时,放置在表单中那个东西就是该控件类的一个对象(实例)类的主要特点:继承性、封装性和多态性。继承性即子类延用父类特征的能力。如手机功能增强。封装是这指将对象的方法程序和属性代码包装在一起。如手机外壳。多态性是指同一个消息可以根据接收消息的对象不同采用不同的操作。如变色龙。类的类型有:容器类和控件类。容器类:可以包含其它类的对象,并且允许访问这些对象。即可作为其它类对象的父对象。比如:表单就是一个容器类。控件类:不可以包含其它类的对象,但可作为其它类对象的子对象。比如:标签和按钮就是控件类。对象的特点:1、每个对象都具有属性,比如表单有高度、宽度等,标签有Caption等;不同对象的属性也是不尽相同的。2、每个对象都有相关联的事件,并能对事件进行识别和响应。比如:按钮的Click事件,当用户在按钮上单击鼠标时,电脑会自动捕获此事件,如果用户为此事件编写了相应的代码,则当此事件发生时,VFP会自动调用用户编写的程序来运行。3、每个对象都具有一些特定的方法程序。利用这些方法程序可自动完成某些特定操作。(理解为对象具有完成某一功能的能力,利用对象的方法可以解决问题或实现某一功能)比如:表单的Release、Refresh、Show等方法,当退出表单时,直接调用Release方法,VFP会自动进行一些内存的释放操作,而不用用户去编写程序完成这些问题。时间驱动机制:在面向对象的程序设计方法中,最主要的一个特点就是事件驱动机制,用户不用去考虑程序的执行顺序,程序如何执行完全由用户的操作来决定,用户对鼠标或键盘的操作,导致某个事件发生,则VFP会自动调用该事件的代码来执行。12.1 表单的创建VFP6.0中支持使用可视化的手段,利用面向对象的程序设计方法来进行程序开发。VFP中的可视化程序开发中对界面的设计是通过表单来实现的。1、如何建立表单常用方法:A:文件新建表单新建文件,然后在弹出的表单窗口内进行设计。B:文件新建项目保存项目找到“文档”标签,然后选择“表单”,再点击“新建”按钮。2、和表单设计相关的工具栏及设计器A:控件工具栏:控件是表单中最重要的组成部分,控件工具栏用于向表单窗口内添加相应的控件,是最重要的工具栏之一。B:属性工具栏:用于设置表单中控件的相关属性,是最重要的工具栏之一。C:数据环境设计器:在VFP中的程序开发,都是与数据库的操作相关的,而数据环境工具栏用于帮助用户设置当前表单中需要访问的数据库与表的信息。打开方法:可直接在表单内右击选择“数据环境”即可。D:布局工具栏:用于对表单中各控件进行排列与对齐操作。注意:工具栏的打开方法:建立表单文件后,默认地会打开属性与表单控件工具栏,如果没有打开可通过“显示”菜单找到相应的工具栏。3、简单的表单实例:制作一个表单,上面写有“欢迎进入歌曲点播系统”几个字和一个“确定”按钮,单击“确定”按钮文字消失。制作步骤:第一步:首先新建一个表单,然后设置表单的高度(Height属性)和宽度(Width属性);第二步:在表单上放置一个标签,设置标签文字为“欢迎进入歌曲点播系统”(Caption属性);第三步:在表单上放置一个按钮,设置按钮上的显示文字为“确定”(Caption属性);第四步:设置动作:首先明确动作是如何被激发的:通过单击“确定”按钮,即按钮的单击事件。再明确动作是如何实现的:要使单击按钮后标签消失,可设置标签的Visible属性为.f.即可。按钮的单击事件:Click()单击按钮事件激发的动作:thisform.label1.visible=.f.表单程序设计一般分为以下两个步骤:第一步:先建立表单,并向表单上添加需要的控件(通过控件设计器),再设置表单及各控件的属性(通过属性面板);第二步:根据要完成的目标,明确动作的激发事件及动作的内容。再编写由事件激发的动作时,要使用面向对象的方法去编写相应的程序。6.2 修改表单1、使用表单设计器修改表单及表单中的对象。2、使用Modify Form命令修改表单。 命令格式:Modify Form .scx 命令功能:打开表单设计器,修改表单及其控件的属性、事件或方法。6.3 运行表单1、在表单设计器中运行表单。2、使用命令运行表单。 命令格式:Do form .scx 命令功能:运行以为名的表单。控件的基本操作1. 创建控件在“表单控件”工具栏中,只要用鼠标单击其中的某一个按钮(该按钮呈凹陷状,代表选取了一个表单控件),然后单击表单窗口内的某处,就会在该处产生一个选定的表单控件,这种方法产生的控件大小是系统默认的;另外也可以在单击“表单控件”工具栏的按钮后,在表单选定位置,按下鼠标左键在表单上拖动,可生成一个其大小合适的控件。2. 调整控件调整控件包括在表单上选定控件、调整控件的大小、位置、删除和剪贴控件等。3设置控件属性当一个控件创建好后,就会在属性窗口的对象选项下拉列表中看到该对象的名字(系统默认)。在选定控件(单击控件或在属性窗口的下拉列表框中选取)后,可对其设置属性。对不同的控件来说,有一些属性是用户需要设置的,而另外一些属性是用户可以不设置的,使用系统给定的默认值。表单中控件的几个常用属性: 1、Name属性与Caption属性:Name属性:用于标识对象的名称,用于在代码中标识该对象,如果其它对象或代码要对该对象进行访问,可通过Name属性中标识的名称实现对其访问。Caption属性:用于设置在对象中显示的内容。每个对象都有Name属性,而如果该对象也同时有Caption属性时,其Caption属性与Name属性的默认值是相同的,设置时注意区分。2、Height/Width与Left/TopHeight/Width用于设置某个对象的高度和宽度Left/Top用于设置某个对象距离其父对象边缘左边和上方的距离。3、ControlSource属性该属性用于设置对象的数据源,凡是和数据库操作相关的程序都需要设置该项属性。4、Font系列属性:该系列属性用于设置对象内文本的字体、字型、字号、颜色等属性。5、Enable/Visible属性:Enable属性用于设置对象是否可用,当一个对象不可用时,在它上面进行任何操作是不会有响应的。Visible属性用于设置对象是否可见。6、Forecoler/Backcolor属性:Forecole属性用于设置前景色。Backcolor属性用于设置背景色。常用控件的介绍:1、 标签控件“标签”控件主要用于显示一段固定的文本信息字符串,它没有数据源,把要显示的字符串直接赋予标签的“标题”(Caption)属性即可。“标签”控件是按一定格式显示在表单上的文本信息,用来显示表单中各种说明和提示。用标签显示的文本信息一般很短,但如果文本信息很长,一行显示不了时,可以通过设置标签控件的WordWrap属性值为.T.来多行显示文本信息。常用属性:Alignment:设置标签内文本的对齐方式,0左对齐,1右对齐,2居中对齐。Autosize:自动调节标签的大小。.f.否 .t.是Wordwrap:标签中显示的文字能否换行。Backstyle:设置标签是否透明 0透明,1不透明。2、 文本框控件(实例1、2、3、4)“文本框”允许用户在表单上输入或查看文本,“文本框”一般包含一行文本。“文本框”是一类基本控件,它允许用户添加或编辑保存在表中非备注字段中的数据。创建一个“文本框”,从中可以编辑内存变量、数组元素或字段内容。所有标准的Visal FoxPro编辑功能,如剪切、复制和粘帖,在“文本框”中都可以使用。常用属性:ControlSource:设置文本框的数据源。PasswordChar:设置文本框内用于显示输入字符的占位符。ReadOnly:只读属性。.t.真 .f.假Value:指定文本框内的值。(题库实例1)3、 命令按钮控件“命令按钮”控件在应用程序中起控制作用,用于完成某一特定的操作,在设计系统程序时,程序设计者经常在表单中添加具有不同功能的命令按钮,供用户选择各种不同的操作。只要将完成不同操作的代码存入不同的命令按钮的“Click”事件中,当表单运行时,用户单击某一命令按钮,将触发该命令按钮的“Click”事件代码完成指定的操作。4、计时器控件:(实例5、6、7)用于控制代码的自动运行。常用属性:Interval:设置时间间隔,以毫秒为单位。重要事件:Timer()事件:每隔Interval设置的时间间隔被自动触发的事件。5、 编辑框在编辑框中允许用户编辑长字段或备注字段文本,允许自动换行并能用方向键、PageUp和PageDown键以及滚动条来浏览文本。编辑框与文本框类似,只是文本框中用户只能输入一行文本,而编辑框中输入多行文本。常用属性:HideSelection:当编辑框失去焦点时,编辑框中选定的文本是否仍显示为选定状态。ScrollBars:设置编辑框是否有滚动条。SelStart:返回用户所选文本的起始点和插入点的位置。SelLength:返回用户所选的文本数。SelText:返回用户所选的文本内容。AllowTabs:指定编辑框中能否使用Tab键。注意:SelStart,SelLength,SelText在设计时不可用,运行时可读写。这几个属性同样适用于文本框和组合框。6、 列表框(例8、9、10、11)列表框用于显示供用户选择的列表项。当列表很多,不能同时显示时,列表可以滚动。列表框不允许用户输入新值。常用属性:ColumnCount:设置列表框的列数。BoundColumn:设置多列的列表框中,哪一列的值与Value值绑定。RowSource:列表中指定值的来源。RowSourceType:确定RowSource是哪种类型。Additem/Removeitem:添加新数据项和删除一数据项的方法。thisform.list1.Removeitem(thisform.list1.listIndex)7、 组合框(例12)组合框兼有编辑框和列表框的功能。它主要用于从列表项中选取数据并显示在编辑窗口。8、 选项按钮组(例13、14)“选项按钮组”又称为单选按钮,常用于从多项控制中选择其中一个,把事先设计好具有特定目的的整套操作过程提供给“选项按钮组”,可以从中选择一套。常用属性:ButtonCount:设置按钮组按钮的数目。注意:选项按钮组是一个容器类的对象,对其内某个单选按钮的表示应写成:Thisform选项按钮组名单选按钮名设置默认值的方法:设置optiongroup1的value值。子option的value值为0时为不选中,为非0时为选中。9、 复选框(例15)“复选框”是只有两个逻辑值选项的控件。当选定某一项时,与该项对应的“复选框”中会出现一个对号。其Value属性代表复选框状态:0(.f.)未选定,1(.t.)选定,2(null)不可用。10、 微调按钮(例16、17)“微调”按钮用于接受给定范围内的数值输入。使用微调控件,一方面可以代替键盘输入接受一值,另一方面可以在当前值的基础上做微小的增量或减量调节。常用属性:Increment:设置单击一次微调按钮时控件的数值增减量。KeyboardHighvalue/KeyboardLowvalue:微调框内能输入的最大/最小值。SpinnerHighValue/SpinnerLowValue:微调框内单击微调按钮能达到的最大/最小值。11、 页框(例18)“页框”控件实际上是选项卡界面。在表单中,一个页框可以有两个以上的页面,它们共同占有表单中的一块区域。在某一时刻只有一个活动页面,而只有活动页面中的控件才是可见的。可以用鼠标单击需要的页面来激活这个页面。表单中的页框是一个容器控件,它可以容纳多个页面,在每个页面中又可以包含容器控件或其他控件。常用属性:PageCount:页框中页面的数目。ActivePage:设置页框中活动页面。12、 命令按钮组(例19)“命令按钮组”控件是把一些命令按钮组合在一起,作为一个控件管理。每一个命令按钮有各自的属性、事件和方法,使用时需要独立地操作每一个指定的命令按钮。13、 表格(例20、21)表格是将数据以表格形式表示出来的一种控件、容器。表格提供了一个全屏幕输入输出数据表记录的方式,它也是一个以行列的方式显示数据的容器控件。一个表格控件包含一些列控件(在默认的情况下为文本框控件),每个列控件能容纳一个列标题和列控件。“表格”控件能在表单或页面中显示并操作行和列中的数据,“表格”控件主要用于创建一对多的表单,用文本框显示父记录,用表格显示子记录,当用户浏览父表中的记录时,表格将显示与之相对应的子记录。14、 图像“图像”控件允许在表单中显示图片。“图像”控件可以在程序运行的动态过程中加以改变。常用属性:Picture:表示要显示的图片文件。Stretch:图片的显示方式。0剪裁方式 1等比方式 2变比填充此属性当图片大小与控件大小不一致时有效。15、ActiveX控件和ActiveX绑定控件“ActiveX”控件的功能是向应用程序中添加OLE对象,它又称为OLE控件。OLE是对象链接与嵌入的英文缩写(Object Linking and Embedding),即把一个对象以链接或嵌入的方式包含在其他的Windows应用程序,如Word、Excel等。16、表单集表单集是容器对象,是一个或多个相关表单的集合,在表单集里可以把一条记录的字段放在不同的表单里。表单中程序设计的方法表单程序设计一般性的步骤是:1、先设置表单中所有控件的起始属性;2、在相应的控件上双击,然后找到相应的事件编写代码。在代码中也可以动态地修改控件的相关属性;3、运行、调试。17、图形控件CurvatureWidthHeight综合实例实例分析:例1: 在考生文件夹中,完成以下要求:1建立项目PROJ1;2将MAIN.PRG添加进该项目,并设置成主文件;3在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中,界面要求如下:1) 该表单的名称为“Form1”,标题为“密码验证窗口”,高度为260,宽度为400;2) 定义一个名称为“Label1”标题为“请输入密码”的标签;3) 定义一个名称为“Text1”的文本框,字体为10磅字,密码输入时显示“*”; 4)定义一个名称为“Command1”,标题为“确定”的按钮,当单击该按钮时,若密码正确,利用MessageBox函数产生消息窗,消息窗标题为“正确”,提示信息为“欢迎光临”;若密码错误,消息窗标题为“错误”,提示信息为“禁止进入”,消息窗类型为33,编写Click事件代码(密码为“ABCD”);5) 定义一个名称为“Command2”,标题为“关闭”的按钮,当单击该按钮时,释放该表单 (不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:编写Command的click事件:If thisform.text1.value=”ABCD” Messagebox(“正确”,33,“欢迎光临”)ElseMessagebox(“错误”,33, “禁止进入”)Endif实例2:1.在考生文件夹下建立项目PROJ1;2.将考生文件夹中的MAIN.PRG添加进该项目,并设置成主文件; 3.在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中。界面要求如下:1) 该表单的名称为“Form1”,标题为“圆的面积”,高度为260,宽度为400;2) 定义一个名称为“Label1”、标题为“请输入圆的半径”、字号为12磅的标签;3) 定义一个名称为“Text1”的文本框,字号为10磅,用于输入圆的半径;4) 定义一个名称为“Label2”的标签,标题为空,能根据内容自动调整大小;5) 定义一个名称为“Command1”,标题为“计算”的按钮,当单击该按钮时,计算圆的面积并显示在标签“Label2”中,编写其Click事件代码;6) 定义一个名称为“Command2”,标题为“关闭”的按钮,当单击该按钮时,释放该表单(不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:编写command的click事件r=val(thisform.text1.value)s=pi()*r*rthisform.label2.caption=str(s)实例3:在考生文件夹中,完成以下要求:1建立项目PROJ1;2将MAIN.PRG添加进该项目,并设置成主文件;3在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中,界面要求如下:1) 该表单的名称为“Form1”,标题为“平均分”,高度为260,宽度为400;2) 将考生文件夹下的自由表cj.dbf添加到表单的数据环境中;3) 定义一个名称为“Text1”文本框;4) 定义一个名称为“Command1”,标题为“求平均分”的按钮,当单击该按钮时,计算cj表中所有记录的平均成绩并显示在Text1文本框中。编写其“Click”事件代码;5) 定义一个名称为“Command2”,标题为“关闭”的按钮,当单击该按钮时,释放该表单(不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:编写代码:set talk offaverage 成绩 to athisform.text1.value=a实例4:在考生文件夹中,完成以下要求:1建立项目PROJ1;2将MAIN.PRG添加进该项目,并设置成主文件;3在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中,界面要求如下:1) 该表单的名称为“Form1”,标题为“字体演示”,高度为260,宽度为400;2) 定义一个名称为“Text1”的文本框,用于输入文字,初始字号为12磅;3) 定义一个名称为“Command1”,标题为“放大”的按钮,当单击该按钮时,文本框中的字号增加2磅,当字号超过60磅,“放大”按钮将变成灰色,编写其Click事件代码;4) 定义一个名称为“Command2”,标题为“关闭”的按钮,当单击该按钮时,释放该表单(不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:编写代码:if thisform.text1.fontsize0 Thisform.text1.value=thisform.text1.value-1Endif练习7:在考生文件夹中,完成以下要求:1建立项目PROJ1;2将MAIN.PRG添加进该项目,并设置成主文件;3在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中,界面要求如下: 1) 该表单的名称为“form1”,标题为“欢迎”,高度为260,宽度为400;2) 定义一个名称为“Label1”、标题为“欢迎参加2004年计算机水平考试”的标签,字号为12磅的加粗蓝色字体(RGB值为0,0,255),开始时标签不移动;3) 定义一个名称为“Timer1”的计时器,Enabled为.F.,Interval的值为1000,编写Timer事件代码,使得每执行一次该代码标签右移动5;4) 定义一个名称为“command1”,标题为“开始”的按钮,单击该按钮时,标签“Label1”中的内容逐渐向表单右边移动;5) 定义一个名称为“command2”,标题为“关闭”的按钮,当单击该按钮时,关闭该表单 (不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:设置计时器Timer1 Intrval 属性设为 1000 Enabled 属性设为 .F. (开始静止)编写Timer1的Timer代码:thisform.label1.left=thisform.label1.left+5设置一个按钮,编写click代码:thisform.timer1.enabled=.t.练习8、1.在考生文件夹下建立项目PROJ1;2.将考生文件夹中的MAIN.PRG添加进该项目,并设置成主文件; 3.在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中。界面要求如下:1) 该表单的名称为“Form1”,标题为“我的表单”,高度为260,宽度为400;2) 定义一个名称为“Label1”、标题为“能夺得冠军的球队是”的标签,字体为加粗、隶书14磅字。3)定义一个名称为“List1”的列表框,数据来源类型为1,列表项的来源设置为“国际米兰,AC米兰,尤文图斯”,编写其Click事件代码,使得选中的列表项显示在文本框中; 4)定义一个名称为“Text1”的文本框,字体为12磅字,用于显示列表框选中的列表项;5) 定义一个名称为“Command1”,标题为“关闭”的按钮,当单击该按钮时,释放该表单 (不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:设置一个列表框,数据来源类型(rowsourcetype)为1,列表项的来源(rowsource)设置为“国际米兰,AC米兰,尤文图斯”,编写其click事件代码:thisform.text1.value=thisform.list1.value练习9、在考生文件夹中,完成以下要求:1建立项目PROJ1;2将MAIN.PRG添加进该项目,并设置成主文件;3在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中,界面要求如下:1) 该表单的名称为“Form1”,标题为“我的表单”,高度为260,宽度为400;2) 定义一个名称为“List1”列表框,字号为11磅,用于显示偶数;3) 定义一个名称为“Command1”,标题为“开始”的按钮,当单击该按钮时,将1到100之间的偶数显示在列表框“List1”中,编写其Click事件代码;4) 定义一个名称为“Command2”,标题为“关闭”的按钮,当单击该按钮时,释放该表单(不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:编写按钮的click事件代码:For i=2 to 100 step 2 Thisform.list1.additem(str(i)Endfor练习10、在考生文件夹中,完成以下要求:1建立项目PROJ1;2将MAIN.PRG添加进该项目,并设置成主文件;3在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中,界面要求如下:1) 该表单的名称为“Form1”,标题为“风景区添加”,高度为260,宽度为400;2) 定义一个名称为“Text1”的文本框,字体为10磅字; 3)定义一个名称为“List1”的列表框,数据来源类型为1,列表项的来源设置为“泰山,黄山”;4)定义一个名称为“Command1”,标题为“添加”的按钮,当单击该按钮时,文本框中输入的内容添加到列表框最后,编写其Click事件代码;5) 定义一个名称为“Command2”,标题为“关闭”的按钮,当单击该按钮时,释放该表单 (不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:设置list1的数据来源类型(rowsourcetype)为1,列表项的来源(rowsource)设置为“泰山,黄山”;编写“添加”按钮的click事件代码:Thisform.list1.additem(thisform.text1.value)练习11、1.在考生文件夹下建立项目PROJ1;2.将考生文件夹中的MAIN.PRG添加进该项目,并设置成主文件; 3.在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中。界面要求如下:1) 该表单的名称为“Form1”,标题为“成绩表单”,高度为260,宽度为400;2) 将考生文件夹下的自由表cj.dbf添加到表单的数据环境中;3) 定义一个名称为“List1”列表框,数据来源类型为“字段”,数据项的来源为cj表中“姓名”字段4) 定义一个名称为“Label1”的标签,标题为空,11磅字;5)编写列表框的“Click”事件代码,将选中学生所对应的成绩显示在标签中;6) 定义一个名称为“Command1”,标题为“关闭”的按钮,当单击该按钮时,释放该表单(不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:设置一个列表框,数据来源类型(rowsourcetype)为“字段”,数据项的来源(rowsource)为cj表中“姓名”字段和“成绩”字段;设置boundcolumn属性为2(自由表cj中第二个“成绩”字段与value的值绑定),编写列表框的click事件代码:thisform.label1.caption=thisform.list1.value练习12、1.在考生文件夹下建立项目PROJ1;2.将考生文件夹中的MAIN.PRG添加进该项目,并设置成主文件; 3.在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中。界面要求如下:1) 该表单的名称为“Form1”,标题为“课程选择”,高度为260,宽度为400;2) 定义一个名称为“Combo1”的下拉组合框,数据来源类型为1,列表项的来源设置为“计算机基础,高等数学,大学英语”,编写其Click事件代码,使得选中的列表项显示在文本框中;3)定义一个名称为“Text1”的文本框,字体为12磅字,用于显示列表框选中的列表项;4) 定义一个名称为“Command1”,标题为“关闭”的按钮,当单击该按钮时,释放该表单 (不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:设置一个组合框combo1, 数据来源类型为1,列表项的来源设置为“计算机基础,高等数学,大学英语”,编写其Click事件代码:thisform.text1.value=thisform.combo1.value练习13、在考生文件夹中,完成以下要求:1建立项目PROJ1;2将MAIN.PRG添加进该项目,并设置成主文件;3在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中,界面要求如下: 1)该表单的名称为“Form1”,标题为“色彩设置”,高度为150,宽度为230,禁止最大化; 2)定义一个名称为“Label1”、标题为“前景色”的标签,字体大小为12磅,字体颜色的RGB为64,128,128,控件大小自动调整; 3)定义一个名称为“Text1”的文本框,Value的值为示范窗口; 4)定义一个名称为“OptionGroup1”的选项按钮组,3个按钮的标题顺序为“红色”、“绿色” 和“蓝色”,当选中某个按钮时,文本框中的文字颜色发生相应的变化,编写“OptionGroup1”的Click事件代码;(“红色”的RGB为255,0,0、“绿色”的RGB为0,255,0、“蓝色”的RGB为0,0,255) 5)定义一个名称为“Command1”,标题为“关闭”的按钮,当单击该按钮时,释放该表单(不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:设置选项按钮组,编写click事件:do case case this.value=1 thisform.text1.forecolor=rgb(255,0,0) case this.value=2 thisform.text1.forecolor=rgb(0,255,0) case this.value=3 thisform.text1.forecolor=rgb(0,0,255)endcase练习14:1.在考生文件夹下建立项目PROJ1;2.将考生文件夹中的MAIN.PRG添加进该项目,并设置成主文件;3.在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中。界面要求如下:1) 该表单的名称为“Form1”,标题为“我的表单”,高度为260,宽度为400;2) 定义一个名称为“Label1”、标题为“请输入文本内容”的标签,字体为加粗、楷体14磅字;3) 定义一个名称为“Text1”的文本框,字体为16磅字,用于输入文本;4) 定义一个名称为“Label2”、标题为“请选择字号”的标签,字体为黑体、加粗、12磅;5) 定义一个名称为“OptionGroup1”的选项按钮组, 4个按钮的标题顺序为“12”、“16”、“18”和“20”,当选中某个按钮时,文本框输入的文字大小发生相应的变化,用Do Case结构编写“OptionGroup1”的Click事件代码;6) 定义一个名称为“Command1”,标题为“关闭”的按钮,当单击该按钮时,释放该表单 (不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:放置文本框Text1放置选项按钮组OptiongroupButtonCount 4编写Optiongruop1的click事件: Do caseCase this.value=1 Thisform.text1.fontsize=12Case this.value=2 Thisform.text1.fontsize=16Case this.value=3 Thisform.text1.fontsize=18Case this.value=4 Thisform.text1.fontsize=20Endcase练习15:在考生文件夹中,完成以下要求:1建立项目PROJ1;2将MAIN.PRG添加进该项目,并设置成主文件;3在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中,界面要求如下:1) 该表单的名称为“Form1”,标题为“设置窗口”,高度为260,宽度为400;2) 定义一个名称为“Label1”、标题为“请输入内容”的标签,字体为加粗、楷体14磅字。3) 定义一个名称为“Text1”高度适中的文本框,Value值为“请观察效果”;4) 定义一个名称为“Check1”,标题为“文本框背景为红色”、Value值为.T.的复选框,当选中该复选框时,“Text1”背景为红色(RGB值为255,0,0),当未选中该复选框时,“Text1”背景为白色(RGB值为255,255,255);5) 定义一个名称为“Check2”,标题为“文本框前景为蓝色”、Value值为.F.的复选框,当选中该复选框时,“Text1”前景为蓝色(RGB值为0,0,255),当未选中该复选框时,“Text1”前景为黑色(RGB值为0,0,0);6) 定义一个名称为“Command1”,标题为“关闭”的按钮,当单击该按钮时,释放该表单 (不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:放置check1,value值为.t.,click事件代码:if this.value=.t. thisform.text1.backcolor=rgb(255,0,0)else thisform.text1.backcolor=rgb(255,255,255)endif放置check2,value值为.f.,click事件代码:if this.value=.t. thisform.text1.forecolor=rgb(0,0,255)else thisform.text1.forecolor=rgb(0,0,0)endif练习16:1.在考生文件夹下建立项目PROJ1;2.将考生文件夹中的MAIN.PRG添加进该项目,并设置成主文件; 3.在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中。界面要求如下:1) 该表单的名称为“Form1”,标题为“微调演示”,高度为260,宽度为400;2) 定义一个名称为“Text1”的文本框,字体为12磅字; 3)定义一个名称为“Spinner1”的微调控件,其变化范围为010,变化的幅度为2,编写其InteractiveChange事件代码,使得单击微调按钮时变化后的数值同时显示在文本框中;4) 定义一个名称为“Command1”,标题为“关闭”的按钮,当单击该按钮时,释放该表单 (不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:放置微调控件,spinnerhighvalue为10,spinnerlowvalue为0,increment为2,编写其interactivechange事件:thisform.text1.value=this.value练习17:1.在考生文件夹下建立项目PROJ1;2.将考生文件夹中的MAIN.PRG添加进该项目,并设置成主文件; 3.在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中。界面要求如下:1) 该表单的名称为“Form1”,标题为“颜色设置”,高度为260,宽度为400;2) 定义一个名称为“Label1”标题为“红”的标签;3) 定义一个名称为“Label2”标题为“绿”的标签;4) 定义一个名称为“Label3”标题为“蓝”的标签;5) 定义三个名称分别为“Spinner1”、“Spinner 2”、“Spinner 3”的微调控件,它们的变化范围为0255,变化幅度为1; 6) 定义一个名称为“Command1”,标题为“设置为表单背景色”的按钮,当单击该按钮时,表单背景色设置为用3个微调控件中数字组成的rgb颜色,编写Click事件代码;7) 定义一个名称为“Command2”,标题为“关闭”的按钮,当单击该按钮时,释放该表单 (不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:放置三个微调控件,spinnerhighvalue为255,spinnerlowvalue为0,increment为1。编写command的click事件代码:thisform.backcolor=rgb(thisform.spinner1.value,thisform.spinner2.value,thisform.spinner3.value)练习18:1.在考生文件夹下建立项目PROJ1;2.将考生文件夹中的MAIN.PRG添加进该项目,并设置成主文件; 3.在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中。界面要求如下:1) 该表单的名称为“Form1”,标题为“我的表单”,高度为260,宽度为400;2) 定义一个名称为“Pageframe1”页框,含有2个“页面”,第一个页面的标题为“第一页”,第二个页面的标题为“第二页”;3) 在第一个页面中添加一个名称为“Label1”标题为“这是第1页”的标签;在第二个页面中添加一个名称为“Label2”标题为“这是第2页”的标签,两个标签均能自动适应大小;4) 定义一个名称为“Command1”,标题为“关闭”的按钮,当单击该按钮时,释放该表单(不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:放置页框控件,pagecount为2,page1的caption为“第一页“,page2的caption为“第二页“。选中page1,在其中放置label1,并设置其caption为“这是第一页”,同样设置page2.例19:在考生文件夹中,完成以下要求:1建立项目PROJ1;2将MAIN.PRG添加进该项目,并设置成主文件;3在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中,界面要求如下:1) 该表单的名称为“Form1”,标题为“记录浏览”,高度为260,宽度为400;2) 将考生文件夹下的自由表cj.dbf添加到表单的数据环境中;3)将数据环境中cj表中各字段拖到表单中; 4)定义一个名称为“Commandgroup1”的按钮组,按钮的标题分别为“上记录”和“下记录”,当单击按钮时,能浏览到不同的记录,编写“Commandgroup1”的“Click”事件代码;5)定义一个名称为“Command1”,标题为“关闭”的按钮,当单击该按钮时,释放该表单 (不得退出VFP系统)。4.调试后将此项目连编成PROJ1.EXE文件。简单答案过程:编写connandgroup1的click事件代码:if this.value=1skip -1else skipendifthisform.refresh若放置两个单独的按钮,则command1的click事件代码:skip -1thisform.refreshcommand2的click事件代码:skip thisform.refresh例20:在考生文件夹中,完成以下要求:1建立项目PROJ1;2将MAIN.PRG添加进该项目,并设置成主文件;3在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中,界面要求如下:1)该表单的名称为“Form1”,标题为“查询”,高度为260,宽度为400;2)将考生文件夹下的自由表cj.dbf添加到表单的数据环境中;3) 定义一个名称为“Text1”的文本框,用于输入性别;4)定义一个名称为“Grid1”表格,数据来源类型为“表”,数据项的来源为cj1表,用于显示查询信息;5)定义一个名称为“Command1”,标题为“查询”的按钮,单击该按钮时,按输入的性别将cj表中的记录添加到cj1中,并将cj1表中的数据在表格中显示,编写按钮的Click事件代码。6)定义一个名称为“Command2”,标题为“关闭”的按钮,单击该按钮时,释放该表单(不得退出VFP系统),编写其Click事件代码。4调试后将此项目连编成PROJ1.EXE文件。简单答案过程:设置grid1表格, 数据来源类型(recordsourcetype)为“表”,数据项的来源(recordsource)为cj1表.编写command1的click事件代码:if thisform.text1.value=男 select * from cj where 性别=男 into dbf cj1else select * from cj where 性别=女 into dbf cj1endifthisform.grid1.recordsource=cj1thisform.refresh例21:在考生文件夹中,完成以下要求:1建立项目PROJ1;2将MAIN.PRG添加进该项目,并设置成主文件;3在该项目中建立一个文件名为SCRE1的表单,将其保存到考生文件夹中,界面要求如下:1)该表单的名称为“Form1”,标题为“查询”,高度为260,宽度为400;2)将考生文件夹下的自由表cj.dbf添加到表单的数据环境中;3) 定义一个名称为“Combo1”的下拉组合框,数据来源类型为“值”,数据项“男,女”;4)定义一个名称为“Grid1”表格,数据来源类型为“表”,数据项的来源为cj1表,用于显示查询信息;5)定义一个名称为“Command1”,标题为“查询”的按钮,单击该按钮时,按选择的性别将cj表中的记录添加到cj1中,并将cj1表中的数据在表格中显示,编写按钮的Click事件代码。6)定义一个名称为“Command2”,标题为“关闭”的按钮,单击该按钮时,释放该表单(不得退出VFP系统),编写其Click事件代码。4调试后将此项目连编成PROJ1.EXE文件。简单答案过程:设置combo1下拉组合框, 数据来源类型(rowsourcetype)为“值”,数据项(rowsource)“男,女”;设置grid1表格, 数据来源类型(recordsourcetype)为“表”,数据项的来源(recordsource)为cj1表.编写command1的click事件代码:if thisform.combo1.value=男 select * from cj where 性别=男 into dbf cj1else select * from cj where 性别=女 into dbf cj1endifthisform.grid1.recordsource=cj1thisform.refresh
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑环境 > 建筑工程


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

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


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