1、第 6 章表单设计与应用6.1知 识 要 点(1)对象和类。(2)表单的建立、使用、修改。(3)表单中控件添加、控件属性的设置。6.2典型试题与解析【例 1】下面关于类、对象、属性和方法的叙述中,错误的是_。A类是对一类相似对象的描述,这些对象具有相同种类的属性和方法B属性用于描述对象的状态,方法用于表示对象的行为C基于同一个类产生的两个对象可以分别设置自己的属性值D通过执行不同对象的同名方法,其结果必然是相同的解析:在现实世界中的任何实体都可以认为是对象。对象可以是具体的实物,也可以是某些概念。对象的三个基本要素是属性、事件和方法。属性用来描述对象的状态,是对象的静态物理特征。事件是一种预先
2、定义好的能被对象识别和响应的动作。方法用来描述对象的行为过程。事件的触发一般是具有独立性的,也就是说每个对象识别和响应属于自己的事件。类是具有相同或相似性质的对象的抽象,也就是说类是具有相同属性、共同方法的对象的集合。答案:D【例 2】在 Visual FoxPro 中,下面关于属性、方法和事件的描述错误的是_。A属性用于描述对象的状态,方法用于表示对象的行为B基于同一个类产生的两个对象可以分别设置自己的属性值Visual FoxPro 实训(第 3 版)166可视化程序设计C事件代码也可以像方法一样被显示调用D在创建一个表单时,可以添加新的属性、方法和事件解析:方法和属性都可以扩展,用户可以
3、自己定义方法和属性,在程序中可以调用该方法和属性。事件是系统提供的,不能扩展。答案:D【例 3】下面关于表单若干常用事件的描述中,正确的是_。A释放表单时,Unload 事件在 Destroy 事件之前引发B运行表单时,Init 事件在 Load 事件之前引发C单击表单的标题栏,引发表单的 Click 事件D上面的说法都不对解析:Load 事件的触发时机为创建对象前,Init 事件的触发时机为创建对象时,单击控件将触发该控件的 Click 事件。释放表单时,先触发表单的 Destroy 事件,然后触发表单的 Unload 事件。答案:D【例 4】运行表单时,下列有关表单事件首先被触发的是_。A
4、ClickBErrorCInitDLoad解析: Load 事件的触发时机为创建对象前, Init 事件的触发时机为创建对象时, Click事件是在前两个事件后,用户单击表单时触发的。答案:D【例 5】表单文件的扩展名是_。A.frmB.prgC.scxD.vcx解析:.prg 为程序文件扩展名,.scx 为表单文件扩展名,.vcx 为可视类库文件扩展名。答案:C【例 6】修改已经存在的表单文件的命令是_。AMODIFY FORMBEDIT FORMCOPEN FORMDREAD FORM解析:选择“文件”“打开”命令,在弹出的“打开”对话框中选择要修改的表单文件;也可以在命令窗口输入下面的命
5、令修改表单:MODIFY FORM 。答案:A【例 7】假设某表单的 Visible 属性的初值为.F.,能将其改为.T.的方法是_。AHideBShowCReleaseDSetFocus解析:Show 方法是显示表单,并指定该表单是模式表单还是非模式表单。该方法将表单的 Visible 属性值设为.T.,同时使表单成为活动对象。答案:B【例 8】关闭表单的程序代码是 ThisForm.Release,Release 是_。A表单对象的标题B表单对象的属性考试篇167第 2 部分C表单对象的事件D表单对象的方法解析: 表单常用的事件有 Init 事件、 Destroy 事件、 Load 事件、
6、 Unload 事件、 GotFocus事件、Click 事件、DbClick 事件、RightClick 事件和 InteractiveChange 事件。常用的方法有 Release 方法、Refresh 方法、Show 方法、Hide 方法和 SetFocus 方法。答案:D【例 9】新创建的表单默认标题为 Form1,为了修改表单的标题,应设置表单的_。AName 属性BCaption 属性CClosable 属性DAlwaysOnTop 属性解析:Name 属性是所有对象都具有的属性,它是所创建对象的名称。所有对象在创建时都会由 Visual FoxPro 自动提供一个默认名称。Ca
7、ption 属性决定控件标题显示的文本内容。 Closable 属性决定是否可用表单标题栏上的关闭按钮关闭表单。 AlwaysOnTop属性决定其他窗口是否覆盖住表单窗口。答案:B【例 10】假设在表单设计器环境下,表单中有一个文本框且已经被选定为当前对象。现在从属性窗口中选择 Value 属性,然后在设置框中输入:=2001-9-10-2001-8-20。请问以上操作后,文本框 Value 属性值的数据类型为_。A日期型B数值型C字符型D以上操作出错解析:文本框的 Value 属性可以接受任意类型的数据,可以直接输入数据,也可以输入“=”及表达式,通过运算得到。题中表达式为两个日期相减,结果
8、为两个日期相差的天数,即数值型数据。答案:B【例 11】以下所列各项属于命令按钮事件的是_。AParentBThisCThisFormDClick解析:事件是一种预先定义好的能被对象识别和响应的动作,每一个对象都有与其相关联的事件, Click 是对象的单击事件。 Parent 是对象的一个属性, 而 This 和 ThisForm是关键字,分别表示该对象和该对象所在的表单。答案:D【例 12】在 Visual FoxPro 中,属于命令按钮属性的是_。AParentBThisCThisFormDClick解析:属性用来描述对象的状态,供对象调用。Parent 是对象的一个属性,属性值为对象引
9、用,指向该对象的直接容器对象。答案:A【例 13】假设表单上由一选项组:男女,初始时该选择组的 Value 的属性值为1,若单选按钮“女”被选中,该选项组的 Value 属性值是_。A1B2C “女”D “男”解析:选项组控件的 Value 属性值默认是数值型(初始值为 1) ,也可以是字符型。若为数值 N,则表示选项组中第 N 个单选按钮被选中,若为字符串 C,则表示选项组中Visual FoxPro 实训(第 3 版)168可视化程序设计Caption 属性值为 C 的单选按钮被选中。此题中,单选按钮“女”被选中,表示第二个单选按钮被选中,所以为 2。答案:B【例 14】在表单设计器环境中
10、,为表单添加一个选项按钮组:男女。默认情况下,第一个单选按钮“男”为选中状态,此时该选项按钮组的 Value 属性值为_。A0B1C男D.T.解析:选项按钮组的 Value 属性值默认是数值型。答案:B【例15】 表单里有一个选项按钮组, 包含两个选项组Option1和Option2, 假设Option2没有设置 Click 事件代码,而 Option1 以及单选按钮和表单都设置了 Click 事件代码,那么当表单运行时,如果用户单击 Option2,系统将_。A执行表单的 Click 事件代码B执行选项按钮组的 Click 事件代码C执行 Option1 的 Click 事件代码D不会有反应
11、解析:若命令组或选项组中某个按钮有自己独立的 Click 事件,当单击该按钮时,将执行为其单独设置的代码,而不执行按钮组中的 Click 事件代码。若按钮组编写了 Click 事件代码,而组中的某个按钮没有设置事件代码,那么当这个按钮的 Click 事件引发时,将执行按钮组的 Click 事件代码。答案:B【例 16】表格控件的数据源可以是_。A视图B表CSQL SELECT 语句D以上答案都对解析:表格的数据源可以是表、视图和 SQL SELECT 语句。答案:D【例 17】表单名为 myForm 的表单中有一个页框 myPageFrame,将该页框的第三页(Page3)的标题设置为“修改”
12、 ,可以使用代码_。AmyForm.Page3.myPageFrame.Caption=修改BmyForm.myPageFrame.Caption.Page3=修改CThisform.myPageFrame.Page3.Caption=修改DThisform.myPageFrame.Caption.Page3=修改解析: 当需要引用某个对象时, 就必须指明对象所在的层次。 访问对象属性的格式:.。对象属性是描述对象特征的,所以通常要被赋予具体的值。答案:C【例 18】页框控件也称作选项卡控件,在一个页框中可以有多个页面,页面个数的属性是_。ACountBPageCNumDPageCount解析
13、:PageCount 属性指定页框对象所含页面个数。该属性最小值为 0,最大值为 99。答案:D考试篇169第 2 部分【例 19】在 Visual FoxPro 中,可视类库文件的扩展名是_。A.dbfB.scxC.vcxD.dbc解析:.dbf 是数据表文件的扩展名,.scx 是表单文件的扩展名,.vcx 是可视类库文件的扩展名,.dbc 是数据库文件的扩展名。答案:C【例 20】创建一个名为 student 的新类,保存新类的类库名称是 mylib,新类的父类是 Person,正确的命令是_。ACREATE CLASS mylib OF student AS PersonBCREATE
14、CLASS student OF Person AS mylibCCREATE CLASS student OF mylib AS PersonDCREATE CLASS Person OF mylib AS student解析:创建新类的命令格式:CREATE CLASS 类名 OF 类库名AS 父类。答案:C6.3测试题1在表单中为了快速设计表格可以使用_。A表格设计器B表格向导C表格生成器D表格控件2选择“表单”“快速表单”命令可以打开_。A表单向导B表单设计器C表单生成器D表单编辑3表单控件工具栏的作用是在表单上创建_。A文本B事件C控件D方法4在 Visual FoxPro 中,表单
15、文件的扩展名为_。A.qprB.prgC.scxD.pjx5如果要运行一个表单,下列事件首先触发的是_。ALoadBErrorCInitDClick6运行表单时,下列两个事件被引发的顺序是_。ALoad 事件和 Init 事件同时被引发BLoad 事件在 Init 事件之后被引发CLoad 事件在 Init 事件之前被引发DLoad 事件与 Init 事件没有先后关系7表单启动或运行时将引发事件_。AShowBRunCDestroyDLoad8 表单关闭或释放时将引发事件_。AHideBReleaseCDestroyDLoadVisual FoxPro 实训(第 3 版)170可视化程序设计9
16、释放和关闭表单的方法是_。AReleaseBDeleteCLostFocusDDestory10有 Visual FoxPro 中,释放表单时会引发的事件是_。AUnload 事件BInit 事件CLoad 事件DRelease 事件11在 Visual FoxPro 的一个表单中设计一个“退出”命令按钮负责关闭表单,该命令按钮的 Click 事件代码是_。AThisForm.FreeBThisForm.UnloadCThisForm.CloseDThisForm.Release12下面属于表单方法名(非事件名)的是_。AInitBReleaseCDestroyDCaption13下面属于表单
17、方法名(非事件名)的是_。ADblClickBDestroyCShowDClick14假设表单 MyForm 隐藏着,让该表单在屏幕上显示的命令是_。AMyForm.ListBMyForm.DisplayCMyForm.ShowDMyForm.ShowForm15在 Visual FoxPro 中调用表单 mf1 的正确命令是_。ADO mf1BDO FROM mf1CDO FORM mf1DRUN mf116以下属于容器类控件的是_。ATextBFormCLabelDCommandBotton17下列表单的_属性设置为真时,表单运行时将自动居中。AAutoCenterBAlwaysOnTop
18、CShowCenterDFormCenter18在 Visual FoxPro 中为表单指定标题的属性是_。ATopBTitleCCaptionDName19对于表单及控件的绝大多数属性,其类型通常是固定的,通常 Caption 属性只用来接收_。A数值型数据B字符型数据C逻辑型数据D以上数据类型都可以20在表单控件中,要保存多行文本,可创建_。A列表框B文本框C标签D编辑框21设置文本框内容的属性是_。AValueBCaptionCNameDInputmask22在 Visual FoxPro 中,若要文本框控件内显示用户输入时全部以“*”号代替,需要设置属性_。AValueBPasswor
19、dCPassvalueDPasswordChar23如果文本框的 InputMask 属性值是#99999,允许在文本输入的是_。A+12345Babc123C$12345Dabcdef考试篇171第 2 部分24在命令按钮组中,决定命令按钮数目的属性是_。AButtonCountBButtonsCValueDControlSource25将编辑框的 ReadOnly 属性值设置为.T.,则运行时此编辑框中的内容_。A只能读B只能用来编辑C可以读也可以编辑D对编辑框设置无效26在表单控件中希望能够编辑日期型数据,可创建_。A编辑框B文本框C列表框D标签27下列关于列表控件(ListBox)的说
20、法,错误的是_。A列表框控件可显示一个数据项列表,用户只能从中选择一个条目B不能修改列表框中 Value 属性的值C列表框可以有多个列,即一个条目可包含多个数据项D当列表框的 RowSourceType 为 0 时,在程序运行中,可以通过 AddItem 方法添加列表框条目28在表单中,有关列表框和组合框内选项的多重选择,正确的叙述是_。A列表框和组合框都可以设置成多重选择B列表框和组合框都不可以设置成多重选择C列表框可以设置多重选择,而组合框不可以D组合框可以设置多重选择,而列表框不可以29 在 Visual FoxPro 中, 组合框的 Style 属性值为 2, 则该下拉框的形式为_。A
21、下拉组合框B下拉列表框C下拉文本框D错误设置30下列关于组合框的说法中正确的是_。A组合框中,只有一个条目是可见的B组合框不提供多重选定的功能C组合框没有 MultiSelect 属性的设置D以上说法均正确31在表单中为表格控件指定数据源的属性是_。ADataSourceBDateFromCRecordSourceDRecordFrom32在 Visual Foxpro 中,下列关于属性、事件、方法叙述错误的是_。A属性用于描述对象的状态B方法用于描述对象的行为C事件代码可以象方法一样被显示调用D基于同一个类产生的两个对象的属性不能分别设置自己的属性33在 Visual Foxpro 中,列表框基类的类名是_。AListBoxBEditBoxCCheckBoxDComboBox34在 Visual Foxpro 中,组合框基类的类名是_。A CheckBoxB ListBoxC ComboBoxD EditBoxVisual FoxPro 实训(第 3 版)172可视化程序设计6.4测试题答案1C2C3C4C5A6C7D8C9A10A11D12B13C14C15C16B17A18C19B20D21A22D23A24A25A26B27A28C29B30D31C32D33A34C