第6章表单与控件创建与使用答案
第六章 表单设计习题 (2)

第六章 表单设计一、选择题1、设表单FORM1包含命令按钮组G1和文本框T1,G1中包含命令按钮C1和C2,在C2的Click事件代码中要引用T1的VALUE属性,则正确引用是 。
A)THISORM.T1.VALUEB)THIS.Parent.T1.VALUEC)THIS.Parent.Parent.T1.VALUE D)T1.VALUE2、当调用表单的Show方法时,可能激发表单的 。
A)Load事件 B)Init事件 C)Activate事件D)Click事件3、组合框的内容进行一次新的选择,一定发生的事件是 。
A)change B)interactivechange C)whenD)click4、创建对象时发生 事件。
A)Init B)Load C)InteractiveChangeD)Activate5、用表单设计器设计表单,下列叙述中错误的是 。
A)可以创建表单集 B)可以向表单添加新属性和方法C)可以对表单添加新事件 D)数据环境对象可以加到表单中6、表单的Name属性用于______。
A)作为保存表单时的文件名 B)引用表单对象C)显示运行表单标题栏中 D)作为运行表单时的表单名7、可以在表单的数据环境中添加的是 。
A)表 B)表之间的临时关系 C)查询D)视图8、可改写计数属性的容器是 。
A)表单集、表格、页框、页面 B)命令按钮组、选项按钮组、表格、页框C)表单、列、页面、容器 D)页面、表单、工具栏、-SCREEN9、如果在运行表单前向表单中传递参数,则应在表单的 事件代码中包含PARAMENTERS语句。
A)Init B)Load C) Activate D)数据环境的BeforeOpenTables10、按钮的Name属性用于 。
A)作为按钮上的文字 B)按钮对象的引用名C)按钮的属性名 D)以上都不是11、下面关于OLE对象的说法中错误的是 。
A)可插入的OLE对象只能来自于支持OLE的应用程序,例如Excel和WordB)一个OLE对象,只能是图片、声音和Excel、Word文档C)在表单中,可以用绑定型OLE对象来显示通用型字段中OLE对象的内容D)使用表单设计器可以创建绑定型OLE对象12、一个按钮,若要在单击按钮后,按钮销毁,需要在click事件中写代码 。
第6章 表格与表单

总结:间距cellspacing的作用
再设置填充为10
<table border="20" cellspacing="10 " cellpadding="10" bordercolor="#0099FF"> <tr> <td>row 1, cell 1</td> <td>row 1, cell 2</td> </tr> <tr> <td>row 2, cell 1</td> <td>row 2, cell 2</td> </tr> </table>
可见:设置表格边框为0时,会使单元格边框也变为0象素, 而设置表格边框为其他数值时,不会影响单元格边框的宽
再设置背景颜色为玫瑰色
<table border="20" bgcolor="#9933CC" bordercolor="#0099FF"> <tr> <td>row 1, cell 1</td> <td>row 1, cell 2</td> </tr> <tr> <td>row 2, cell 1</td> <td>row 2, cell 2</td> </tr> </table>
表格标记
表格是由<table>定义的,行由<tr>定义,单元格 由<td>定义,因此<table>、<tr>、<td>是表格中 三个最基本的标记,必须一起出现。 表格中的单元格<td>能容纳网页中的任何元素,如 图像,文本,列表,表单,表格等。
vfp第六章 表单 第七章控件

第六章表单的创建与使用6.1 面向对象程序设计概述1. 基本概念 P161-165面向对象的程序设计是通过对类、子类和对象等的设计来体现的,类是面向对象程序设计技术的核心。
类:定义了对象特征以及对象外观和行为的模板。
类的特征:1)封装性:隐藏了类中对象的内部数据或操作细节,只看到外表信息。
2)继承性:任何类都可以从其它已有的类中派生,新类保持了父类中的行为和属性,但增加了新的功能。
体现了面向对象设计方法的共享机制。
3)多态性:相同的操作可作用于多种类型的对象上,并获得不同的结果。
4)抽象性:提取一个类或对象与众不同的特征,而不对该类或对象的所有信息进行处理。
基类:系统本身提供的类称为基类。
基类包括容器类和控件类。
容器类是其他对象的集合,如表格、选项按钮组;控件类是单一的对象,不包含其他对象,如命令按钮、文本框。
子类:以其他类定义为起点,对某一对象所建立的新类。
新类将继承任何对父类所做的修改。
类库:存储类的文件,每一个以可视方式设计的类都存储在一个类库中。
类库文件的扩展名为 .VCX 。
P216对象:是类的一个实例,包括了数据和过程。
具有所在类所定义的全部属性和方法。
VFP有两种对象:容器对象和控件对象。
属性:控件、字段或数据库对象的特性。
事件:由对象识别的一个动作。
方法:与对象相联系的由程序执行的一个处理过程,即处理事件的一组代码。
用户不可以为对象创建新的事件,但可以创建新的方法程序。
2. Visual FoxPro 基类 P166从下述 Visual FoxPro 基类中,可以派生子类或创建对象。
容器命令组控件微调标签表单命令按钮复选框OLE 容器控制线条表单集选项组列表框OLE 绑定型控制分隔符 # 表格选项按钮 # 文本框自定义形状标头 # 页框组合框工具栏图象列 # 页面 # 编辑框计时器注:# 这些类是父容器的集成部分,在类设计器中不能子类化。
基类事件的最小集合 P167事件说明Init 当对象创建时激活。
第6章表单及其控件的创建与使用

表单可以通过可视化界面操作创建,也可以通 过编程的方法创建。其中通过可视化的界面操作 创建表单主要有以下两种方法: ▲利用表单向导创建表单 ▲利用表单设计器创建表单
第二节 使用向导创建表单
一、利用向导创建基于一个表(视图)的表单 利用表单向导可以方便地创建基于一张表(或 视图)的表单,表单向导将根据用户对一系列问 题的回答自动生成一个表单。 表单向导的启动,可以是: ▲菜单命令 ▲“新建”工具按钮 ▲项目管理器 (文档选项卡)
表单设计时,一般应考虑以下原则: ▲从用户的角度设计表单; ▲表单的外观、操作应与Windows中常见的窗口 和对话框尽可能地一致; ▲根据任务的不同,设计不同的表单及表单中的 控件,以便用户使用; ▲应用程序中的表单界面保持一致; ▲根据表单中控件的数量、所表达的数据性质等, 设计表单中控件的布局或表单所包含的页面数; ▲对用户操作表单不要有过多的限制,应允许用 户做一些错误的操作,并能作出相应的处理,即 具有一定的容错能力。
对于一对多表单,由于父表的每个记录对应于 子表中的多个记录,所以表单运行时,父表在表 单中每次显示一个记录的数据,子表的相关数据 在表单中利用表格控件以浏览窗口的形式显示。 在一对多表单中,用于记录定位的按钮只对父 表产生控制,子表记录可通过子表窗口的窗口操 作控制。 利用表单向导创建表单是一种快速、简捷的方 法,但生成的表单其外观、形式、功能基本是固 定的,且较为简单,通常不能满足需要。
7、属性窗口 一个表单是由多个控件组成的窗口,表单及 其控件均为“对象”。每个对象都有其各自的属 性、事件和方法。 不同类型的控件所具有的属性、事件和方法有 些是相同的,有些是不同的。 利用向导、生成器创建的表单及其控件,系统 自动为其设置了相应的属性、事件和方法代码。 直接利用控件工具栏向表单中添加的控件,用户 必须为其设置一些属性以及事件和方法代码,以 实现所需的功能。 控件的属性、事件和方法的设置可以在属性窗 口中进行。
表单及控件的创建和使用

=======(答案 1)======= 0
第 6 题 (1.0 分) 题号:1330 如图所示的表单用于浏览教师( JS )信息.为了在表格控件中以不同的背景色显示男、 女教师的信息,则在表格控件的 Init 事件代码中,可使用如下形式的语句: This.【1】("DynamicBackcolor","IIF(xb='女',RGB(125,125,125),;RGB(125,125,125))", "Column") 表单中下拉列表框的 RowSourceType 属性为" 6- 字段", 数据源为系名代码表(表的文件名为 xmdm.dbf, 含系代码( xdm )和系名( xim )两个字段), 为了使下拉列表中显示系代码和系名两列数据,则 RowSource 属性值为: xmdm.xdm ,【2】 .
第 10 题 (1.0 分) 题号:134 在"表单设计器"中设计表单时,如果从"数据环境设计器"中将表拖放到表单中, 则表单中将会增加一个【1】对象,如果从"数据环境设计器"中将某表的逻辑型 字段拖放到表单中,则表单中将会增加一个【2】对象.
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电,力通根保1据过护生管高产线中工敷资艺设料高技试中术卷资0配不料置仅试技可卷术以要是解求指决,机吊对组顶电在层气进配设行置备继不进电规行保范空护高载高中与中资带资料负料试荷试卷下卷问高总题中体2资2配,料置而试时且卷,可调需保控要障试在各验最类;大管对限路设度习备内题进来到行确位调保。整机在使组管其高路在中敷正资设常料过工试程况卷中下安,与全要过,加度并强工且看作尽护下可1都关能可于地以管缩正路小常高故工中障作资高;料中对试资于卷料继连试电接卷保管破护口坏进处范行理围整高,核中或对资者定料对值试某,卷些审弯异核扁常与度高校固中对定资图盒料纸位试,置卷编.工保写况护复进层杂行防设自腐备动跨与处接装理地置,线高尤弯中其曲资要半料避径试免标卷错高调误等试高,方中要案资求,料技编试术写5、卷交重电保底要气护。设设装管备备置线4高、调动敷中电试作设资气高,技料课中并术3试、件资且中卷管中料拒包试路调试绝含验敷试卷动线方设技作槽案技术,、以术来管及避架系免等统不多启必项动要方方高式案中,;资为对料解整试决套卷高启突中动然语过停文程机电中。气高因课中此件资,中料电管试力壁卷高薄电中、气资接设料口备试不进卷严行保等调护问试装题工置,作调合并试理且技利进术用行,管过要线关求敷运电设行力技高保术中护。资装线料置缆试做敷卷到设技准原术确则指灵:导活在。。分对对线于于盒调差处试动,过保当程护不中装同高置电中高压资中回料资路试料交卷试叉技卷时术调,问试应题技采,术用作是金为指属调发隔试电板人机进员一行,变隔需压开要器处在组理事在;前发同掌生一握内线图部槽纸故内资障,料时强、,电设需回备要路制进须造行同厂外时家部切出电断具源习高高题中中电资资源料料,试试线卷卷缆试切敷验除设报从完告而毕与采,相用要关高进技中行术资检资料查料试和,卷检并主测且要处了保理解护。现装场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。
第6章 习题参考答案

一、填空题1.控制控件是否可见的属性为__Visible__;控制控件是否可用的属性为__Enabled__;控件的位置是由___Left__和___Top___属性来确定的;控件的大小是由___Width___和___Height___属性来确定;控件上所显示的文本是由__Caption__属性来设定的;控件的外观样式是由__Appearance__来设定,该属性有0和1两个取值。
2.与鼠标有关的事件包括__Click___、__DblClick__、__ MouseDown__、___ MouseUp __、__MouseMove__,其中__ Click __事件在单击控件时被激发,_ MouseDown __事件在鼠标键被按下时被激发,_ MouseUp__事件在鼠标被松开时被激发,_ DblClick __事件在双击控件时被激发。
3.与键盘有关的事件包括__ KeyPress __、KeyDown 、KeyUp __,其中_KeyPress 事件在单击键盘键时被激发,_ KeyDown __事件在按下键盘键时被激发,_ KeyUp __事件在松开键盘键时被激发。
4.要想标签控件能根据所显示的内容自动调整大小,则必须将AutoSize属性设为__ True _。
5.要想在文本框中输入多行内容,则必须将MultiLine属性设为__ True ____。
当文本框中的内容发生改变时,便会激发__ Change __事件,文本框中所输入的内容由_ Text __属性返回。
6.向列表框和组合框中添加列表时,可使用AddItem 方法;删除选定的列表,可使用RemoveItem 方法;删除全部列表项,可使用方法Clear 。
7.滚动条所能代表的范围是由Min 和Max 属性来确定的,滚动条当前所代表的值由Value 属性返回。
当单击滚动条两端的箭头时,滚动条的增量值是由SmallChange 属性决定的,当单击滚动条的空白处时,滚动条的增量值是由LargeChange 属性决定的。
第6章 表格与表单

注意: cellpadding类似于盒子模型的内边距padding,指的是单元格内部的距离 ,cellspacing则指的是外部单元格与单元格之间的距离。可以结合盒子 模型的内外边距理解cellpadding与cellspacing的不同。
6.1 表格标记
• 6.1.2 <table>标记的属性
4、width与height属性
设置单元格的背景图像 设置单元格横跨的列数(用于合并水平方向 的单元格) 设置单元格竖跨的行数(用于合并竖直方向 的单元格)
rowspan
正整数
6.1 表格标记
• 6.1.4 <td>标记的属性
注意:
让IT教学更简单,让IT学习更有效
1、在<td>标记的属性中,重点掌握colspan和rolspan,其他的属性了解 即可,不建议使用,均可用CSS样式属性替代。 2、当对某一个<td>标记应用width属性设置宽度时,该列中的所有单元 格均会以设置的宽度显示。 3、当对某一个<td>标记应用height属性设置高度时,该行中的所有单元 格均会以设置的高度显示。
6.2 CSS控制表格样式
• 6.2.2 CSS控制单元格边距
让IT教学更简单,让IT学习更有效
– 使用<table>标记的属性美化表格时,可以通过cellpadding和 cellspacing分别控制单元格内容与边框之间的距离以及相邻单元 格边框之间的距离。
注意: 行标记<tr>无内边距属性padding和外边距属性margin,本书不再做 具体的演示,初学者可以自己测试加深理解。
属性名 含义 常用属性值
height
align valign
第六章表单及其控件的创建和使用2

34
6.4 控件的创建与使用
是放在表单上用以显示数据(label)、执行操作 (command)或使表单更易阅读(list,shape)的一种 图形对象
控件的分类(与数据的关系划分)
2019年8月23日5时23分
35
控件的分类
数据绑定型控件(书P179)
– 内容与后端的表、视图或查询中的字段,或内存 变量相关联的控件,在该控件中输入、修改或选 择的值将保存在数据源中
以特定的方式激活 打开代码编辑窗口的方法:
– 方法一:执行系统菜单“显示”“代码” – 方法二:在“属性”窗口中双击某事件和方法 – 方法三:在“表单设计器”窗口中双击表单或
某控件
2019年8月23日5时23分
12
步1:双击表单或 控件打开此窗口
步2:选择 控件名称
步4:输入事件代码
步3:选择事 件名称
表单设计器简介—— 属性窗口
注:若属性窗口已经 关闭,可以在表单上 单击右键打开
属性设置框
选项卡
属性列表
书P170~173
2019年8月23日5时23分
函数按钮 8
Example:设置表单的背景颜色(backcolor属性)为红色。
步4:按下确定按钮
步1:选择表单 的Name属性
步3:修改值为 255,0,0
表单(控件)是否可以响应用 真 户引发的事件
表单(控件)运行时是否可见 真
2019年8月23日5时23分
21
书P185~186 表6-6
Alwaysontop closeable
height width movable showwindow showTips
是否总是最上层 控制用户是否能通过双击“关闭”框 来关闭表单。 表单高度 表单宽度 是否可移动 窗口显示的情况 是否显示工具提示
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.选择题1.在下列有关表单及其控件的叙述中,错误的是____A_________ 。
A.从容器层次来看,表单是最高层的容器类,它不可能成为其他对象的集成部分B.表格控件包含列控件,而列控件本身又是一个容器类控件C.页控件的PageCount 属性值可以为0D.表格控件可以添加到表单中,但不可以添加到工具栏中2.对于许多控件来说,可以通过ControlSource 属性与数据绑定。
在下列VFP 对象中,无ControlSource 属性的是_____A________ 。
A.标签(Label )B.复选框(CheckBox )C.选项按钮组(OptionGroup )D.列表框(ListBox )3.若要将当前工作区中打开的表文件GZB.DBF 复制到GZB1.DBF 文件,则可以使用命令_____________ 。
A.COPY GZB.DBF GZB1.DBF B.COPY TO GZB1 REST C.COPY TO GZB1 STRU D.COPY TO GZB14.在下列有关VFP的类、对象和事件的叙述中,错误的是__B___。
A.对象是基于某种类所创建的实例,它继承了类的属性、事件和方法B.基类的最小事件集包含Click事件、Load事件和Destory事件(init事件、destroy事件,error事件)C.事件的触发可以由用户的行为产生,也可以由系统产生D.用户可以为对象添加新的属性和方法,但不能添加新的事件5.数据绑定型控件是指其(显示的)内容与表、视图或查询中的字段(或内存变量)相关联的控件。
若某个控件被绑定到一个表的字段,移动该表的记录指针后,如果该字段的值发生变化,则该控件的___C____属性值也随之发生变化。
B.ControlSourceC.ValueD.Caption6. 在下列几组 VFP 基类中,均具有ControlSource 属性的是 D 。
A.ListBox ,Lable ,OptionButtonB.ComboBox ,EditBox ,Grid (表格具有recordsource和recordsourcetype属性,但不具有controlsource属性) C.ComboBox ,Grid ,TimerD.EditBox ,CheckBox ,OptionButton7.下列关于表单数据环境的叙述中,错误的是 B 。
A.表单运行时自动打开其数据环境中的表B.数据环境是表单的容器 (是表单中数据来源)C.可以在数据环境中建立表之间的关系D.可以在数据环境中加入视图8.在默认的情况下利用表单设计器设计表单时,若从数据环境里将某个表的一个逻辑型字段用鼠标拖放到表单上,则在表单上添加的控件个数和控件类型分别是 D 。
A.2,标签和文本框B.2,标签和复选框C.1,文本框D.1,复选框9.在下列各组控件中,均可与表中的数据绑定的控件是。
A.Combox、Grid和TextBox B.EditBox、Grid和LineC.ListBox、Shape和OptionButton D.CheckBox、Separator和Command10、在下列VFP基类中,无Caption属性的基类是________D______。
A、LableB、OptiongroupC、CheckD、Editbox11、在下列有关控件及其属性的叙述中,错误的是______A________。
A、一个标签控件最多可以显示128个字符(最多256个,如果是字符型常量,则不需要加定界符)B、计时器控件的Interval属性的单位为毫秒C当形状控件Curvature属性值为99时,其曲率最大(圆或椭圆)D组合框控件Style属性控制其为下列表框还是(下拉组合框style属性为0时和下拉列表框style属性为2)12、在下列有关控件的叙述中,错误的是______________。
A、对于标签控件(Label)的Caption属性值来说,其长度(即字符个数))没有限制B、复选框(CheckBox)的Value属性值可以设置为0,或1(也可写作.T.或.f.),或2(只在设计时使用,键盘无法设置为2)C、有些控件无Caption属性,例如文本框(TextBox)D、有些控件可通过相应的生成器设置其部分属性,例如命令按钮组(CommandGroup)13、在下列几组控件中,均有SetAll()方法的是_______D_______。
A、表单(Form)、命令按钮(CommandButton)、命令按钮组(CommandGroup)B、表单集(FormSet)、列(Column)、组合框(ComBox)C、表格(Grid)、列(Column)、文本框(TextBox)D、表单(Form)、页框(PageFrame)、命令按钮组(CommandGroup)14、下列几组控件中,都有ControlCount属性的是______B________。
(容器对象中控件个数)A、表单(Form)、文本框(TextBox)、列表框(ListBox)B、表单集(FormSet)、表单(Form)、页框(PageFrame)C、表单(Form)、页面(Page)、列(Column)D、列(Column)、选项按钮组(OptionGroup)、命令按钮组(CommandGroup)15、对表单中的一个文本框控件来说,下列事件中最后发生的事件是__b_______。
A、Valid b、InitB、Destroy D、Lostfocus init-valid-lostfocus-destroy16、将表单中的所有文本框的Enabled属性设置为假,可在表单的Init事件处理代码中用SetAll方法进行设置。
下列表述中,命令正确的是____C__________。
A、THISFORM.SetAll(“Enabled”, .F., “Text”)B、THISFORM.SetAll(Enabled, .F., Text)C、THISFORM.SetAll(“Enabled”, .F., “TextBox”)D、THISFORM.SetAll(“Enabled”, .F.)。
17、在下列几种控件中,无Value属性的是______________。
A、命令按钮(Command)B、复选框(CheckBox)C、选项按钮(OptionButton)D、编辑框(EditBox)18.在下列关于表格控件的叙述中,错误的是B。
A.表格是容器型控件,它包含列对象 .B.表格的数据源若是表,则该表必须在表单的数据环境中C.表格的数据源可以是表、别名、查询文件或SELECT-SQL命令D.表格滚动条可以设置为不同类型19、在下列几组控件中,均可直接添加到表单中的是C。
mandGroup、OptionButton、TextBoxB.Page、PageFrame、GridmandButton、PageFrame、EditBoxD.TextBox、Column、Header20、设表单Form1上有一个命令按钮组CommandGroup1,命令按钮组中有两个命令按钮(分别:cmdl和cmd2)。
若单击命令按钮Cmdl,可以将命令按钮Cmd2设置为废止状态,则在命令按Cmdl的Click事件中,应包含 A 命令(或功能与之等价的命令)。
A.This.Parent.Cmd2.Enabled=.F.B.ThisForm.Cmd2.Enabled=.F.mandGroup1.cmd2.Enabled=.F.D.THIS.Cmd2.Enabled=.F.21、在下列几组控件中,均具有ControlSource属性和Value属性的是 D 。
A.Pageframe、EditBox、OptionGroup C.TextBox、Label、CommandButtonB.ListBox、Grid、ComboBox D.CheckBox、Spinner、ComboBox二.填空题1.图1 所示的表单用于浏览教师(JS )信息。
为了在表格控件中以不同的背景色显示男、女教师的信息,则在表格控件的Init 事件代码中,可使用如下形式的语句:This._Setall__("DynamicBackcolor","IIF(xb='女',RGB(125,125,125),;RGB(125,125,125))","Column")2.表单中下拉列表框的RowSourceType 属性为“ 6- 字段”,数据源为系名代码表(表的文件名为xmdm.dbf, 含系代码(xdm )和系名(xim )两个字段),为了使下拉列表中显示系代码和系名两列数据,则RowSource 属性值为:xmdm.xdm ,____xim____。
图13.设某表单上有一个页框控件,该页框控件的PageCount 属性值在表单的运行过程中可变(即页数会变化)。
如果要求在表单刷新时总是指定页框的最后一个页面为活动页面,则可在页框控件的Refresh 事件代码中使用语句:This.ActivePage= PageCount 。
4.在某类库中,基于CommandButton 基类新建了一个子类cmd ,基于cmd 类又派生了cmdClose 子类。
若利用cmdClose 类为一个表单添加控件cmdCloseA ,则cmdCloseA 的BaseClsss 属性值为__CommandButton____。
5.某数据库中包含课程(KC )表和成绩(CJ )表,课程表中含有课程代号(kcdh )、课程名(kcm )和学分(xf )等字段,成绩表中含有学号(xh )、课程代号(kcdh )和成绩(cj )等字段。
已创建一个按课程代号查询学生成绩的表单如图 2 所示。
图2表单中下拉列表框(Combo1)的数据源设置如下:RowSource Type 属性为:6-字段RowSource 属性为:kc.kcdh。
在下拉列表框中选择某一课程代号后,表格控件(Grid1 )立即显示该课程所有学生的成绩,且在文本框(Text1 )中显示该课程的课程名,则应在下拉列表框的___InteractiveChange____事件中编写如下代码:SELECT KCThisForm.Text1.Value=kc.kcmThisForm.Grid1.RecordSource=;"SELECT cj.xh,cj.cj FROM cj WHERE cj.kcdh=ALLT(THIS.Vale)INTO CURStmp"(应为allt(cj.kcdh)=allt(this.value))ThisForm.Refresh根据以上代码可判定,表格控件(Grid1 )的RecordSourceType 属性为___4 或SQL___。