当前位置:文档之家› VisualFoxPro表单设计应用练习题

VisualFoxPro表单设计应用练习题

VisualFoxPro表单设计应用练习题
VisualFoxPro表单设计应用练习题

数据库应用技术----VisualFoxPro6.0第7章表单设计与应用

一、填空题:

1、根据表单数据来源进行分类,表单可以分为____、____和____3种类型。

2、表单数据源可以使用数据库表、__________或__________。

3、在使用表单向导创建的表单中,按钮类型可以是______、______、无按钮和定制4种类型。

4、表单文件默认的扩展名为__________。

5、表单“属性”窗口由对象列表框、选项卡、__________和__________组成。

6、根据VisualFoxPro6.0中的控件对象基于所属的类可以分为__________类和__________类。

7、标签控件属性Caption的含义是________,Name的含义是__________。

8、文本框控件属性ControlSource的含义是__________。

10、组合框控件属性RowSource和ControlSource的含义分别是___、___。

二、单项选择题:

1、使用表单向导创建表单,在“表单样式”对话框中可以确定()。

A.表和字段

B.表和样式

C.视图和按钮

D.样式和按钮2、在命令窗口执行表单文件AA,应键入命令( )。

A.DO FORM AA

B.DO AA.scx

C.RUN FORM AA

D.RUN AA.xcx

3、在表单中添加字符型字段控件,系统生成的是( )。

A.文本框

B.编辑框

C.OLE绑定型控件

D.复选框4、下列表单控件中属于容器类的是( )。

A.列表框、组合框、命令按钮、页面、表格

B.列表框、组合框、命令按钮、线条

C.命令按钮组、选项按钮组、页面、表格

D.命令按钮组、选项按钮组、图像、表格

5、在VisualFoxPro6.0中,表单是指()。A.数据库中各个表的清单

C.数据库查询的列表B.一个表中各个记录的清单

D.窗口界面

6、表单对象中可以包括的控件是( )。

A.任意控件

B.所有容器对象

C.页框或任意控件

D.页框、任意控件、容器或自定义对象

7、在VisualFoxPro6.0中,标签控件默认的名字是()。

A.List

https://www.doczj.com/doc/ac16052823.html,bell

C.Edit

D.Text

8、在创建表单时,创建的对象用于保存不希望用户改动的文本控件是()。

A.标签

B.文本框

C.编辑框

D.组合框

9、表单创建下拉列表框控件,该控件的默认名称为( )。

https://www.doczj.com/doc/ac16052823.html,bo

https://www.doczj.com/doc/ac16052823.html,mand

C.Check

D.Caption

10、在VisualFoxPro6.0中,为了将表单从内在中释放(清除),可将表单中寻出命令按钮的Click事件代码设置为()。

A.ThisForm.Refresh

C.ThisForm.HideB.ThisForm.Delete

D.ThisForm.Release

11、控件可以分为容器类和控件类,下列属于容器类控件的是()A.标签

B.命令按钮

C.复选框

D.命令按钮组

12、在对象的引用中,ThisForm表示()

A.当前对象

B.当前表单

C.当前表单集

D.当前对象的上一级

13、如果要使一个表单对象显示的数据是一个视图的数据,需要建立表格与视图的数据连接,可以使用的表格对象是()

A.表格生成器

B.视图生成器

C.表单生成器

D.控件生成器

14、要改变表单上表格对象中当前显示的列数,应设置表格的()

A.ControlSource属性

C.ColumnCount属性B.RecordSource属性

https://www.doczj.com/doc/ac16052823.html,属性

15、能够将表单的Visible属性设置为.T.,并使表单成为活动对象的方法是()A.HideB.ShowC.ReleaseD.SetFocus

三、简答题

1、什么是表单?

2、表单向导提供了哪几种表单样式?

3、常用的表单控件有哪些?

4、使用表单向导创建的表单是否包括定位按钮?

5、表单中的控件类控件有哪些?容器类控件有哪些?

6、表单控件的对齐方式有哪些?

表单设计器功能设计

表单自定义设计器 1设计思路 1.1表单自定义功能的误区 1、关于成本:表单自定义一般容易实现的仅布局、字段的增减、简单的脚本控制等,但有很多诸如复杂脚本控制、自动计算、特殊逻辑验证、主从关系,复杂基础数据选择(过滤、合并)、与其它功能模块的交互等等需求,自定义工具都不能很轻易地解决,最终可能带来的代价是重做,甚至推翻整个系统架构重新实现,付出成本是预计成本的2-4倍以上均有可能。建议采用对此类复杂需求通过关联创建人定义的SQL语句来实现。 2、表单自定义功能实现的方式一般是数据库表中预制了很多字段或者是一个表中的记录存储为ID、字段名、值、字段类型,而且值的类型往往是字符型,这些做法给数据的查询统计及SQL优化带来的是非常大的性能损失和阻力,业务系统数据量不大的时候看不出,一旦数据业务表大到一定程度的时候,性能瓶颈就会出现。我们知道需要工作流的业务系统都是大量用户和大规模业务数据的。对于表单自定义做法,性能瓶颈是一定要考虑的; 3、??表单自定义往往实现的是一个数据实体的增、删、改,但对于一个系统来讲一个表单仅仅是一个功能点而已,这个功能点对于整个系统来讲远不是那么单纯的,有可能一个数据实体的资料分别在多个表单里进行更新和维护,自定义逻辑往往是处理不了它们之间的冲突,还有查询和统计分析,这些是需要关联很多基础数据、关联其它业务数据。自定义表单功能本身也只是从功能特性的角度去出发,对于系统复杂的实体关系、业务模式、设计模式的支持几乎为零,一个高质量系统需要的因素基本实现不了; 4、?企业使用表单自定义工具的时候往往已经有了很多的系统,比如HR、CRM甚至ERP系统,很多关联数据会是来自于这些系统的数据。表单自定义工具往往无法提供高可靠性的集成方案,即使能集成也是勉强的,后续会付出很多手工同步、统计口径不一致等代价,为企业整体的信息化效果大打折扣; 5、?另外从实际的使用情况而言,实现一个表单自定义功能的目标往往是为了方便用户实现自己的业务逻辑,但实际上很少客户会自己去自定义这些表

数据库表结构设计参考

数据库表结构设计参考

表名外部单位表(DeptOut) 列名数据类型(精度范围)空/非空约束条件 外部单位ID 变长字符串(50) N 主键 类型变长字符串(50) N 单位名称变长字符串(255) N 单位简称变长字符串(50) 单位全称变长字符串(255) 交换类型变长字符串(50) N 交换、市机、直送、邮局单位邮编变长字符串(6) 单位标识(英文) 变长字符串(50) 排序号整型(4) 交换号变长字符串(50) 单位领导变长字符串(50) 单位电话变长字符串(50) 所属城市变长字符串(50) 单位地址变长字符串(255) 备注变长字符串(255) 补充说明该表记录数约3000条左右,一般不做修改。初始化记录。 表名外部单位子表(DeptOutSub) 列名数据类型(精度范围)空/非空约束条件 外部子单位ID 变长字符串(50) N 父ID 变长字符串(50) N 外键 单位名称变长字符串(255) N 单位编码变长字符串(50) 补充说明该表记录数一般很少 表名内部单位表(DeptIn) 列名数据类型(精度范围)空/非空约束条件 内部单位ID 变长字符串(50) N 主键 类型变长字符串(50) N 单位名称变长字符串(255) N 单位简称变长字符串(50) 单位全称变长字符串(255) 工作职责 排序号整型(4) 单位领导变长字符串(50) 单位电话(分机)变长字符串(50) 备注变长字符串(255)

补充说明该表记录数较小(100条以内),一般不做修改。维护一次后很少修改 表名内部单位子表(DeptInSub) 列名数据类型(精度范围)空/非空约束条件内部子单位ID 变长字符串(50) N 父ID 变长字符串(50) N 外键 单位名称变长字符串(255) N 单位编码变长字符串(50) 单位类型变长字符串(50) 领导、部门 排序号Int 补充说明该表记录数一般很少 表名省、直辖市表(Province) 列名数据类型(精度范围)空/非空约束条件ID 变长字符串(50) N 名称变长字符串(50) N 外键 投递号变长字符串(255) N 补充说明该表记录数固定 表名急件电话语音记录表(TelCall) 列名数据类型(精度范围)空/非空约束条件ID 变长字符串(50) N 发送部门变长字符串(50) N 接收部门变长字符串(50) N 拨打电话号码变长字符串(50) 拨打内容变长字符串(50) 呼叫次数Int 呼叫时间Datetime 补充说明该表对应功能不完善,最后考虑此表 表名摄像头图像记录表(ScreenShot) 列名数据类型(精度范围)空/非空约束条件ID 变长字符串(50) N 拍照时间Datetime N 取件人所属部门变长字符串(50) N 取件人用户名变长字符串(50) 取件人卡号变长字符串(50) 图片文件BLOB/Image

数据库的设计与实现

《数据库原理》课程设计论文 院(系、部)名称: 专业名称: 学生姓名: 学生学号: 指导教师:

系统简介 开发目的和任务 客户信息是个人,机关,企事业等进行业务联系所必需而频繁使用的信息资料,在许多大型应用系统中都有客户信息管理工具,它是企业单位现代化管理的一个重要的组成部分。本系统的任务是制作一个简单,实用的通讯薄,既可以单独使用,也可以作为其他大型应用系统的一个组成部分来使用。 1.系统功能 (1) 总体功能要求 本系统将介绍如何让在Visual FoxPro 6.0开发环境下快速开发数据库和数据表的方法,并在此基础上建立一个表单,通过表单的运行,可以初步体会到什么是程序,什么是数据库应用程序,数据库应用程序是如何进行编辑,修改,增加,删除,查询和退出的. (2) 客户信息管理系统的基本功能 1)登录:本功能主要是为了防止非操作人员对系统随意更改. 2)主界面:为用户提供了一个友好的界面,是维护,查询模块间相互切换的桥梁. 3)维护:本功能模块主要实现数据的浏览,添加,删除,退出等功能. 4)查询:本功能模块主要实现按姓名,职务,出生日期等查询功能. 2. 系统的特点 (1) 数据库设计的考虑 本系统的信息两不太大,因此只涉及一个库,一个表.库名为通讯

录.DBC表名为通讯录.DBF. (2) 提高系统集成化的考虑 为了是系统短小精悍,并最大限度的提高系统设计的效率,在设计中较多的应用了Visual FoxPro 提供的“选项卡”控件和容器控件.除此之外,还采用了页框控件,其目的是在一个窗口上尽可能多的扩展应用空间,容纳最多的信息量. (3)提高可操作性的考虑 由于使用本系统的人员不一定熟悉计算机基本操作,因此要求系统的操作应尽量简单,本系统在设计时已考虑到这一点,尽可能少的使用键盘的地方,要保证用起来“顺手”. 3. 开发工具与运行环境 (1) 开发工具. VFP6.0 为集成开发环境提供了项目管理器,设计器,生成器和向导机制等,使其成为强有力的数据库开发工具. 1)项目管理器. 2)设计器. 3)生成器. 4)向导. (2)运行环境 硬件环境: PⅡ350MHz以上处理器,16MB以上内存,一般需240MB 硬盘空间. 软件环境:Windows 95及以上的操作系统支持.

VFP表单教学案例汇编

一、如何建立一个完整的VFP应用程序 建立一个完整的VFP应用程序的操作步骤为: 1. 建立一个项目文件,将用到的文件添加到项目文件中(或者在项目文件中建立所需的文件), 将其中一个文件设置为主文件。 2. 连编,形成.exe文件,就可以在脱离VFP环境运行。 3. 关闭VFP, 双击.exe文件运行。 下面以求圆的面积为例,来讲生成VFP应用程序的步骤:1. 建立一个项目文件,文件名为:圆面积.pjx 在其中新建一个程序文件,文件名为main.prg,作为主文件,主文件中的命令语句是运行一个求圆面积的表单文件,表单文件名为:yuan.scx。 将main.prg添加到项目文件中,当然也可以直接在项目文件中建立。将main.prg设置为主文件。在项目管理器窗口中目录树中选择“代码”中的“程序”,如果main.prg是黑体显示的,表明此文件已经是主文件,否则,选定此文件,用“项目”菜单中的“设置主文件”将其设置成主文件。 将表单文件yuan.scx也添加到项目文件中。同样也可在项目文件中直接建立。 (1)Main.prg文件的内容为: Set default to f:\xt &&这里f:\xt要根据自己的文件地址写 Do form yuan.scx Read events (2)建立表单文件yuan.scx,运行如下图: 步骤如下: a. 选择文件-> 新建->表单,出现“表单设计器”窗口,

b. 添加控件 在“表单控件”工具栏,选择“标签”按钮,在表单空白处按下鼠标拖动,表单上显示标签控件label1 。同样方法,再做一个标签控件label2,两个文本框控件Text1和Text2,两个命令按钮Command1, Command2,如图分别设置他们的属性。 c.设置对象的属性: 分别选中lable1、label2、Text1、Text2及Command1、command2,按下表分别设置它们的属性: 对象属性名属性值 label1Caption输入圆的半径: label2Caption圆的面积为: Text1Value0 Text2Value0 Command1caption计算 Command2caption退出 d编写事件代码 为command1(“计算”按钮)编写click事件代码(即单击“计算”按钮时发生的事件): 在“表单设计器”中双击“计算”按钮,弹出代码窗口,如下图 我们在该窗口的“过程”列表中选“click”,然后在窗口的编辑区中输入如下代码: r=thisform.text1.value thisform.text2.value=3.14159*r*r thisform.refresh 同样方法,为command2(“退出”按钮)编写click事件代码: 其中的clear events语句与前面主程序中的read events相对应。在脱离VFP环境运行时,有这句才可以正常退出。

如何设计数据库表

关系型数据库理论可能是20世纪60年代和70年代存储系统先锋的救星,但是从那是开始它就成了许多数据开发人员的毒药,就是因为现代数据库系统发展得如此之好,以至于它将其关系型支柱对开发人员隐藏了。设计良好的关系型数据库很容易使用、很灵活,并且能够保护数据的有效性。而设计不良的数据相反仍然能够发挥相当的作用,但是最终可能会导致数据的无效、错误或者丢失。 开发人员有一些专用的规则,叫做范式(normal forms),他们根据这些规则来创建设计良好的数据库。在这里,我将通过创建一个用于保存书籍信息的简单数据库来探讨一下范式。 确定实体和元素 设计数据库的第一步是做你的家庭作业并确定你所需要的实体。实体是数据一种类型的概念集。通常只从一两个实体开始,再随着你数据的规范化而增加列表。对于我们的示例数据库,它看上去就好像我们只需要一个实体——书。 在确定了所需要实体的清单之后,你下一步就需要为每个实体创建数据元素(也就是说,你需要保存的信息)的清单。收集这样的信息有多种途径,但是最有效的可能就是依赖你的用户了。向你的用户询问他们日常工作的情况,要求查看当前完成他们工作所需要的各种表格和报告。例如,订单上可能会列出你创建销售应用程序所需要的许多数据元素。 我们的书籍实体没有书面表格和报告可用,但是下列元素清单将有助于我们开始设计这个数据库: {Title, Author, ISBN, Price, Publisher, Category} 很重要的一点是,要注意,把我们这里要用的实体移动到元素的过程并不能适用于所有状况。你所需要的实体不会总是像我们书籍示例那样清楚,所以你可能要从数据元素的一长串清单开始,在后面你会根据实体来划分元素。 正规化的头几步 一旦有了实体清单(表格)和数据元素(字段),你就准备好让关系型数据库理论运作了。这个理论的主要推动力是规范化——删除任何重复的组和冗余的数据,并把它们放到两个或者更多相关表里的过程。你并不是一定需要拥有一个以上的表格,但是你的数据简单到只需要一个表格的机会并不多。 你应该小心地检查数据(这些数据会出现在多条记录里)和依赖性错误的实体和元素清单,并把已损坏的字段移动到不同的表格里。例如,你可能列出同一个作者的多本书,并在数据库里重复了作者的名字。当你认为会一次又一次地看到相同的数据值时,你就应该考虑把这个字段移动到另一个表格里了。 要记住,在这一点上,你只是在操作潜在表格的列表,而不应该真正地创建这个表格:现在还是要用笔和纸来列表。 范式简介 数据库规范化的过程非常著名,所以有正式的规则来保证规范化数据库的建设。这些规则有七条,叫做范式,而在大多数情况下头四条就够用了: 第一范式(1NF)——这条规则有几个要求,包括:无多值项目(multivalued item)和重复组(repeating group);每个字段都是原子型的(atomic),也就是说每个字段必须包含可能的最小数据元素;以及表格含有关键字(key)。 第二范式(2NF)——表格必须按照1NF来规范化。所有的字段必须引用(或者描述)主键值。如果主键基于一个以上的字段,那么每个nonkey字段必须取决于复杂键(complex key),而不仅仅是一个没有键的字段。不支持主键的nonkey字段应该被移动到另一个表格里去。 第三范式(3NF)——表格必须符合1NF和2NF的要求。所有的字段都必须相互独立。任何描述nonkey字段的字段都必须被移动到另一个表格里。

《数据库技术与应用》实验报告

《数据库技术与应用》上机实验报告 目录: 一、概述 二、主要上机实验内容 1.数据库的创建 2.表的创建 3.查询的创建 4.窗体的创建 5.报表的创建 6.宏的创建 三、总结 一、概述 (一)上机内容: 第七周:熟悉Access界面,数据库和表的创建,维护与操作 1. 熟悉Access的启动,推出,界面,菜单,工具栏等; 2. 练习使用向导创建数据库、创建空数据库; 3. 练习创建表结构的三种方法(向导、表设计器、数据表)、表中字段属性设置; 4. 练习向表中输入不同类型的数据; 5. 练习创建和编辑表之间的关系; 6. 练习表的维护(表结构、表内容、表外观) 7. 练习表的操作(查找、替换、排序、筛选等) 第八周:练习创建各种查询 1.选择查询(单表、多表、各种查询表达式) 2.参数查询 3.交叉表查询 4.操作查询(生成查询、删除查询、更新查询、追加查询) 第十周:练习创建各种类型的窗体 1.自动创建纵栏式窗体和表格式窗体; 2.向导创建主|子窗体

3.图表窗体的创建 4.练习通过设计器创建窗体 5.练习美化窗体 第十三周:练习创建各种类型的报表 1.自动创建纵栏式报表和表格式报表; 2.向导创建报表(多表报表、图表报表、标签报表) 3.练习通过设计视图创建报表(主|子报表、自定义报表) 4.练习在报表中添加计算字段和分组汇总数据 第十五周:综合应用 1.了解Access数据库系统开发的一般方法; 2.课程内容的综合练习; 3.编写上机实验报告、答疑 (二)上机完成情况 第七周:熟悉Access界面,数据库和表的创建,维护与操作 完成了创建表,向表中输入不同类型的数据,创建和编辑表之间的关系,进行了表的维护,修改了表的结构、内容、外观,最后进行了表的操作,查找、替换、排序、筛选等。 已完成 第八周:练习创建各种查询 练习选择查询、参数查询、交叉表查询,然后练习并操作查询,生成查询、删除查询、更新查询、追加查询等。 已完成 第十周:练习创建各种类型的窗体 自动创建纵栏式窗体和表格式窗体,向导创建主|子窗体和图表窗体,练习通过设计器创建窗体,美化窗体。 基本完成 第十三周:练习创建各种类型的报表 自动创建纵栏式报表和表格式报表,向导创建报表,练习通过设计视图创建报表,在报表中添加计算字段和分组汇总数据。 已完成 第十五周:综合应用

VFP程序设计题汇总

一.程序设计题汇总 1.通过输入学生的学号(字符型)查找学生,若找到该学生,先输出学号与姓名,然后输出“英语”和“计算机实用技术”成绩。若找不到该学生输出“查无该生”。(设表文件“学生信息”满足题目需要) set talk off clear use 学生信息 accept "请输入学生学号:" to xh locate for 学号==xh if !eof() ?学号,姓名 list fiel 英语,计算机实用技术 for 学号=xh else ?"查无该生" endif use 2.输入学生成绩,并要求:成绩小于60分时,输出“不及格”;成绩在60~69分之间时,输出“及格”;成绩在70~79之间时,输出“中”;当成绩在80~89之间时,输出“良”;当成绩在90~100之间时,输出“优”。 set talk off clear input "请输入成绩: " to cj do case case cj>=90 ?"优秀" case cj >=80 ?"良好" case cj >=70 ?"中" case cj >=60 ?"及格" case cj<60 ?"不及格" otherwise

?"数据有误" endcase set talk on 3.按学号在“学生信息.dbf”文件中查找并显示指定的记录。要求可以重复查询,找到则显示该生的记录,找不到则提示“查无此人!”,按非“Y”、“y”可结束查询。 SET TALK OFF CLEAR USE 学生信息 &&设当前目录下表文件存在 ACCEPT '学号查询吗(Y/N)?' TO cx &&循环条件的初始化 DO WHILE cx='Y'.OR.cx='y' &&大小写均可执行查询 CLEAR ACCEPT '请输入学号:' TO xh LOCATE ALL FOR 学号=xh &&此处ALL可以缺省,默认为在全部记录查找。 IF EOF() ?'查无此人!' WAIT ELSE DISPLAY ENDIF ACCEPT '继续按学号查询吗(Y/N)?' TO cx &&修改循环条件 ENDDO SET TALK ON USE 4.逐条显示“学生信息.dbf”文件中“英语成绩”大于等于75的记录。 方法一: SET TALK OFF CLEAR USE 学生信息 DO WHILE !EOF() IF 英语成绩>=75 DISP ENDIF SKIP &&按默认值1向下移动记录指针 ENDDO USE

进销存数据库表结构设计

1.帐类表(KIND) 无索引 序号中文名称英文名称类型备注 1 帐类编号K_SERIAL byte 2 帐类名称K_NAME text*10 本表系统自动建立,共划分为15种帐类,不可增删 帐类编号帐类名称备注 0 上期结存进货,不参加进货统计 1 购入进货,购入时必需输入供货单位名称 2 自制进货 3 投资转入进货 4 盘盈进货 5 领料出库,领料必需输入领料部门名称 6 调拨出库 7 报损出库 8 盘亏出库 9 退库对低值易耗品,在用品退为在用库存 10 直接报废对于低值易耗品,在用品转报废 11 领用对于低值易耗品,在用库存转在用 12 调拨对于低值易耗品,在用库存减少 13 报废对于低值易耗品,在用库存报废 14 直进直出进出库,购入与领料对库存无影响 2.物品表(GOODS) 序号索引名称索引域唯一? 主索引? 1 G_CODING +G_CODING Y N 2 G_SERIAL +G_SERIAL Y Y 序号中文名称英文名称类型备注 1 物品内部编号G_SERIAL INT->long 系统内部唯一标识该物品 2 物品编号G_CODING TEXT * 10 用户使用此编号访问物品 &3 物品名称G_NAME TEXT*40 非空 &4 物品单位G_UNIT TEXT*8 非空 &5 物品规格G_STATE TEXT*20

6 物品类别G_CLASS INT 取自表CLASS 7 备注G_REMARKS MEMO 8 最小库存量G_MIN CURRENCY 为零,即无最小库存 9 最大库存量G_MAX CURRENCY 为零,即无最大库存 10 库存数量G_QUANT CURRENCY 控制出库数量 11 虚拟库存数量G_VQUANT CURRENCY 出库时用 12 库存金额G_AMOUNT CURRENCY 3.类别表(CLASS) 序号索引名称索引域唯一? 主索引? 1 C_CODING +C_CODING Y N 2 C_SERIAL +C_SERIAL Y Y 序号中文名称英文名称类型备注 1 类别内部序号C_SERIAL INT 系统内部唯一标识该物品 2 类别编号C_CODING TEXT *10 用户使用该编号访问类别信息 3 类别名称C_NAME TEXT*20 非空 4 出库类型C_KIND BYTE 1.移动平均 2..先进先出 3.后进先出 4.实际计价 *5.月末平均 5 备注C_REMARKS MEMO *6 底标志C_BOTTOM BOOLEAN *7 类别级别C_LEVEL BYTE 4.供货单位、使用部门(DEPART) 序号索引名称索引域唯一? 主索引? 1 D_CODING +D_CODING Y N 2 D_SERIAL +D_SERIAL Y Y 序号中文名称英文名称类型备注 1 内部序号D_SERIAL INT 系统内部唯一标识该部门 >0 供货单位 =0 库房 <0 使用部门 2 单位编号D_CODING TEXT*10

VFP表单设计中Grid表的着色设置

针对VisualFox p ro表单设计中Grid表的着色设置 【摘要】:本文论述在Visual Foxpro表单设置中,根据不同字的字段、记录中字段的属性值、选中的记录以及在多记录显示中,对Grid表中的记录着色,以区分不同的选择或记录的具体方法及应用场合。 【关键词】:VisualFoxpro Grid 着色设置 在利用VisualFoxpro开发各种管理系统中,为了在表单中显示多条记录,常用方法在表单中添加Grid表(以下称“表格”)控件。然而,当表格中的字段较多或显示的记录较多时,如果表格的中文字的颜色又都一样,未免让人看了眼花缭乱,容易造成这样或那样的操作错误。如果能根据表格中的不同字段、不同记录、关键字段等赋予不同的着色方式以区分不同的字段或记录,减少不必要的操作失误,其效果就不言而喻了。笔者在系统开发的实践中,针对表格中记录的不同特性,探索出几种在表格中着色的具体方法及应用场合,现阐述如下。 1、对表格的不同列(字段)设置不同的着色方式 如果需浏览的表格存在较多列,为了区分不同列或某些重要列,以方便用户浏览记录、美化表格设置,我们可以对不同的列或重要列采用不同的着色。具体是在表单的适当位置(如笔者在表单的activate事件中)中添加如下代码: &&设某一表格(grid1)在三列 thisform.grid1.column1.backcolor=rgb(255,255,0) thisform.grid1.column1.forecolor=rgb(255,0,255) thisform.grid1.column3.backcolor=rgb(255,0,0) thisform.grid1.column3.forecolor=rgb(255,255,255) 以上代码的含义是设置表的第一列的背景色和前景色(文字的颜色)为黄色和紫色;

基于表单的调查问卷系统的设计与实现

基于PDF表单的调查问卷系统的设计与实现摘要:随着信息时代的到来,对市场的了解直接决定了一个企业的未来发展,所以进行市场调查显的尤其重要,如何提高调查的效率和安全性,就显得尤其重要。本课题就是利用PDF表单强大的功能来提高调查的效率和安全性。通过运用JSP开发在线调查网页,此网页能够对PDF调查问卷进行下载、浏览,并能把问卷的内容处理之后保存在数据库中,再从数据库中统计问卷结果并显示到网页上;还可以通过电子邮件收集调查问卷并把问卷内容保存到数据库。本文描述了实现基于PDF表单的调查问卷系统的原理、方法和实现过程。所设计的调查问卷系统具有一定的应用价值。 关键词:PDF;JSP ;数据库;调查问卷

The Design and Implementation of the questionnaire system Base on PDF form Abstract:With the advent of the information age, knowledge of the market has a direct bearing on the future development of enterprises, conducting market surveys in the particularly important, how to improve the efficiency of investigations and security, it is particularly important. This issue is the use of PDF form powerful features to improve the efficiency of investigations and security. JSP development through the use of online survey web page, this page questionnaire able to download PDF,

VFP程序设计题

VFP程序设计题 一.程序设计题汇总 1.通过输入学生的学号(字符型)查找学生,若找到该学生,先输出学号与姓名,然后输出“英语”和“计算机实用技术”成绩。若找不到该学生输出“查无该生”。(设表文件“学生信息”满足题目需要) set talk off clear use 学生信息 accept "请输入学生学号:" to xh locate for 学号==xh if !eof() ?学号,姓名 list fiel 英语,计算机实用技术 for 学号=xh else ?"查无该生" endif use 2.输入学生成绩,并要求:成绩小于60分时,输出“不及格”;成绩在60~69分之间时,输出“及格”;成绩在70~79之间时,输出“中”;当成绩在80~89之间时,输出“良”;当成绩在90~100之间时,输出“优”。 set talk off clear input "请输入成绩: " to cj do case case cj>=90 ?"优秀" case cj >=80 ?"良好" case cj >=70 ?"中"

case cj >=60 ?"及格" case cj ?"不及格" otherwise ?"数据有误" endcase set talk on 3.按学号在“学生信息.dbf”文件中查找并显示指定的记录。要求可以重复查询,找到则显示该生的记录,找不到则提示“查无此人!”,按非“Y”、“y”可结束查询。 SET TALK OFF CLEAR USE 学生信息 &&设当前目录下表文件存在 ACCEPT '学号查询https://www.doczj.com/doc/ac16052823.html,/b-5d46134968dc5022aaea998fcc22bcd127ff42e4.html吗(Y/N)?' TO cx &&循环条件的初始化 DO WHILE cx='Y'.OR.cx='y' &&大小写均可执行查询 CLEAR ACCEPT '请输入学号:' TO xh LOCATE ALL FOR 学号=xh &&此处ALL可以缺省,默认为在全部记录查找。 IF EOF() ?'查无此人!' WAIT ELSE DISPLAY ENDIF ACCEPT '继续按学号查询吗(Y/N)?' TO cx &&修改循环条件 ENDDO SET TALK ON USE

数据库设计技巧系-设计表和字段

数据库设计技巧系列(二)——设计表和字段 设计表和字段 1. 检查各种变化 我在设计数据库的时候会考虑到哪些数据字段将来可能会发生变更。比方说,姓氏就是如此(注意是西方人的姓氏,比如女性结婚后从夫姓等)。所以,在建立系统存储客户信息时,我倾向于在单独的一个数据表里存储姓氏字段,而且还附加起始日和终止日等字段,这样就可以跟踪这一数据条目的变化。 — Shropshire Lad 2. 采用有意义的字段名 有一回我参加开发过一个项目,其中有从其他程序员那里继承的程序,那个程序员喜欢用屏幕上显示数据指示用语命名字段,这也不赖,但不幸的是,她还喜欢用一些奇怪的命名法,其命名采用了匈牙利命名和控制序号的组合形式,比如cbo1、 txt2、txt2_b 等等。 除非你在使用只面向你的缩写字段名的系统,否则请尽可能地把字段描述的清楚些。当然,也别做过头了,比如Customer_Shipping_Address_Street_Line_1 I 虽然很富有说明性,但没人愿意键入这么长的名字,具体尺度就在你的把握中。 — Lamont Adams 3. 采用前缀命名 如果多个表里有好多同一类型的字段(比如FirstName),你不妨用特定表的前缀(比如 CusLastName)来帮助你标识字段。 — notoriousDOG 时效性数据应包括“最近更新日期/时间”字段。时间标记对查找数据问题的原因、按日期重新处理/重载数据和清除旧数据特别有用。 — kol 5. 标准化和数据驱动 数据的标准化不仅方便了自己而且也方便了其他人。比方说,假如你的用户界面要访问外部数据源(文件、XML 文档、其他数据库等),你不妨把相应的连接和路径信息存储在用户界面支持表里。还有,如果用户界面执行工作流之类的任

表单设计与应用

表单设计与应用 面向对象的概念: 对象:客观世界里的任何实体都可被看作是对象。对象可以是具体的物,也可以指某些概念。 从编程的角度来看,对象是一种将数据和操作过程结合在一起的数据结构,或者是一种具有属性(数据)和方法(过程和函数)的集合体。事实上程序中的对象就是对客观世界中对象的一种抽象描述。 (1)对象属性:属性用来表示对象的状态。 (2)对象方法:对象方法是描述对象行为的过程 容器与控件:Visual FoxPro 中的类一般可分为两种类型:容器类和控件类。相应地,可分别生成容器(对象)和控件(对象)。 容器可以被认为是一种特殊的控件,它能包容其他的控件或容器 控件是一个可以以图形化的方式显示出来,并能与用户进行交互的对象,但是控件类不能包含其它对象。 事件:是一种由系统预先定义而由用户或系统发出的动作。事件作用于对象,对象识别事件并作出相应反应。 Visual FoxPro中的常用事件: Init:创建对象时发生的事件。通常应用于表单(Form)的初始化事件。 Click:鼠标左键单击对象时发生的事件。通常应用于命令按钮(Command)、命令按钮组(CommandGroup)的单击事件。 InteractiveChange:以交互方式改变对象的值时发生的事件。通常应用于选项按钮组(OptionGroup)、组合框(Combo)、复选框(Check)的值发生改变时发生的事件。 对象的引用 (1)绝对引用:从最高容器开始逐层向下直到某个对象为止的引用称为绝对引用。 (2)相对引用:从正在为编写事件代码的对象出发,通过逐层向高一层或低一层直到另一对象的引用称为相对引用。 属性或关键字引用 This 只能针对于当前对象(相对引用) ThisForm 当前对象所在的表单(绝对引用) 对象的引用: 【例】表单Form1中有一个命令按钮Command1,单击该命令按钮更改其标题为“确定”。事件代码如下: 方法一:THIS.CAPTION=”确定” 方法二:https://www.doczj.com/doc/ac16052823.html,MAND1.CAPTION=“确定" 建立表单:表单(Form)是Visual FoxPro提供的用于建立应用程序界面的最主要的工具之一。表单相当于WINDOWS应用程序的窗口 运行单表: 在设计时可采用以下方法运行表单文件: (1)在表单设计器窗口中,在系统菜单中选择【表单】|【执行表单】命令,或单击常用工具栏上的! 按钮运行表单。 (2)在命令窗口输入命令:(第55套)DO FORM <表单文件名> 表单设计器环境介绍 (1)设计器窗口:“表单设计器”窗口内包含正在设计的表单。用户可在表单窗口中可视化地添加和修改控件、改变控件布局,表单窗口只能在“表单设计器”窗口内移动。以新建方式启动表单设计器时,系统将默认为用户创建一个空白表单。 (2)属性窗口:设计表单的绝大多数工作都是在属性窗口中完成的,因此用户必须熟悉属性

Access 应用基础—数据库及表设计

Access 应用基础—数据库及表设计 内容简介 Microsoft Access 是当前最流行的Windows数据库应用程序之一,它是一种关系型数据库管理系统,不但能存储和管理数据,还能编写数据库管理软件,是一种使用方便、功能较强的数据库开发工具。主要介绍:数据库的基本概念、Access与数据库的基本操作、Access 的基本组件:表、查询、窗体、报表、宏及数据表、窗体和报表的打印等内容。 学习重点 1.数据库的基本概念 2.数据库结构的定义与编辑 3.数据库数据的建立与编辑 4.表、查询、窗体和报表及宏的创建与使用 学习难点 1.表结构的设计、创建表、完整性约束 2.复杂查询的设计与实现 3.窗体中控件的设置 4.报表中的各类统计 5.宏及命令,并组织一个简单的数据库应用程序 一. 数据库基础知识及Access Access是Office办公套件中一个极为重要的组成部分。刚开始时微软公司是将Access 单独作为一个产品进行销售的,自Office 97开始将Access捆绑到其中,成为Office套件中的一个重要成员。现在它已经成为Office办公套件中不可缺少的部件了。Microsoft 公司在Access 95 的基础上陆续推出了 Access 97、Access 2000、Access 2003,成为世界上最流行的桌面数据库管理系统之一。微软公司通过大量地改进,将Access的新版本功能变得更加强大。不管是处理公司的客户订单数据;管理自己的个人通讯录;还是大量科研数据的记录和处理,人们都可以利用它来解决大量数据的管理工作。 Access是一种关系型数据库管理系统,不但能存储和管理数据,还能编写数据库管理软件,用户可以通过Access提供的开发环境及工具方便地构建数据库应用程序,大部

VFP表单设计案例2011

VFP表单控件应用设计与案例 表单控件的应用要点: 1.条件语句在表单中应用:IF语句和do case语句 2.循环语句在表单中应用:for语句和do while语句 3.计时器的应用 4.数据表在表单中应用:skip 5.SQL语句的应用 6.列表框的应用 难点:SQL的应用 表单控件对象有: 表单表单集文本框编辑框列表框组合框表格 复选框选项按钮组(单选框)页框 Container容器 命令按钮命令按钮组 标签线条形状图像 计时器微调控件 ActiveX绑定控件超级链接控件 对象分为:控件对象和容器控件。 控件对象是基本对象:命令按钮、文本框、标签、线条、形状、复选框、组合框。。。。容器控件包含其他对象的对象:表单、表单集、Container容器、命令按钮组、微调控件、选项按钮组(单选框)、页框、页面、表格、表格列 从功能上分为: 输出类:标签、图像、线条、形状 输出类:文本框、编辑框、列表框、组合框、微调控件 控制类:命令按钮、命令按钮组、复选框选项按钮组(单选框)、计时器 多重容器类:表格、页框、Container容器、表单集 连接类:ActiveX绑定控件超级链接控件 1、条件语句在表单中应用 单分支语句: if …. Else…. Endif 多分支语句: do case ……endcase If…endif语句一般都是与 For…endfor配合应用。 案例1多分支0901

参考答案: “计算”按钮的click event代码:x=thisform.text1.value do case case x<-10 y=2*(sin(x)+1) case x<10 y=(abs(x)-5)/3 other y=x/7-8 endcase thisform.text2.value=y thisform.refresh 案例2多分支0912 k=thisform.text1.value do case case k>=0 and k<60 m="不合格" case k<85 m="合格" case k<=100 m="优秀"

数据库实报告4---表单设计

云南大学数学与统计学实验教学中心 实验报告 一、实验目的 1.明确表单的作用,了解在数据库设计中表单的用途; 2.学习VFP中的表单设计及建立; 3.为今后数据库应用系统的设计提供基础。 二、实验内容 配合教材第七章的内容,要求: 1.学习和了解VFP6.0本章的基本概念:对象和类、事件、方法、容器和控件等2.单表的表单设计 ? 表单设计的数据环境 ? 利用不同方法向表单中添加控件 ? 控件的属性窗口设置 ? 修改和定制表单 3.一对多表单的设计 ? 在表单设计中常用控件的使用 ? 优化表单设计 三、实验环境 Windows XP Visual Foxpro 6.0 四、实验过程 1. 实验步骤 (1)单表表单的设计(用2课时) ①学习用向导建立单表表单: 用向导方法建立“世界杯”的”示例1——基本信息.scx”表单(参考P162~165),熟悉用向导创建单表表单的方法; 在“项目管理器”中选“文档”,“表单” 点击“项目管理器”右边的“新建” 选择“表单向导”

“数据库和表”下拉框中选定“世界杯”、“基本信息” “可用字段”中将需要的字段添加到右边的“选定字段”框中,单击“下一步” 预览: 图1基本信息.scx ②用设计器方法建立”示例2——最佳球员.scx”表单,如P172 图7.20示; 通过本例学习并掌握在表单中进行: 在“项目管理器”窗口选择“文档”选项卡,再选择“表单”图标。 单击“新建”,得到“新建表单”

●标签控件的添加; 找到已保存的表单,点击右边的“修改”,打开相应的“表单设计器”,点击“表单控件”中的“A”式样的图标,然后在表中画出控件于你想要的位置。 ●数据环境的设置; 可以“显示”/ “数据环境” 也可单击鼠标右键,然后单击快捷菜单中的“数据环境” 亦可单击“表单控件”工具栏上的“数据环境”按钮, 从而打开数据环境设计器,进行相应的数据环境设置。 ●添加字段所对应的“文本框”控件的多种方法: 包括: a. 用属性窗口的方法; b. 用控件生成器的方法; c. 用快速表单的方法(参看讲义P169~171); d. 用数据环境设计器中的字段拖拽(参看讲义P174~175); ●属性窗口的设置; ●定位按钮的添加;

数据库设计规范和值得注意的问题

如果把企业的数据比做生命所必需的血液,那么数据库的设计就是应用中最重要的一部分。有关数据 库设计的材料汗牛充栋,大学学位课程里也有专门的讲述。不过,就如我们反复强调的那样,再好的 老师也比不过经验的教诲。所以我们最近找了些对数据库设计颇有造诣的专业人士给大家传授一些设 计数据库的技巧和经验。我们的编辑从收到的130 个反馈中精选了其中的60 个最佳技巧,并把这些 技巧编写成了本文,为了方便索引其内容划分为5 个部分: 第1 部分—设计数据库之前 这一部分罗列了12 个基本技巧,包括命名规范和明确业务需求等。 第2 部分—设计数据库表 总共24 个指南性技巧,涵盖表内字段设计以及应该避免的常见问题等。 第3 部分—选择键 怎么选择键呢?这里有10 个技巧专门涉及系统生成的主键的正确用法,还有何时以及如何索引字段 以获得最佳性能等。 第4 部分—保证数据完整性 讨论如何保持数据库的清晰和健壮,如何把有害数据降低到最小程度。 第5 部分—各种小技巧 不包括在以上4 个部分中的其他技巧,五花八门,有了它们希望你的数据库开发工作会更轻松一些。 第1 部分—设计数据库之前 1. 考察现有环境 在设计一个新数据库时,你不但应该仔细研究业务需求而且还要考察现有的系统。大多数数据库 项目都不是从头开始建立的;通常,机构内总会存在用来满足特定需求的现有系统(可能没有实 现自动计算)。显然,现有系统并不完美,否则你就不必再建立新系统了。但是对旧系统的研究 可以让你发现一些可能会忽略的细微问题。一般来说,考察现有系统对你绝对有好处。— Lamont Adams 我曾经接手过一个为地区运输公司开发的数据库项目,活不难,用的是Access 数据库。我设置 了一些项目设计参数,而且同客户一道对这些参数进行了评估,事先还查看了开发环境下所采取 的工作模式,等到最后部署应用的时候,只见终端上出了几个提示符然后立马在我面前翘辫子 了!抓耳挠腮的折腾了好几个小时,我才意识到,原来这家公司的网络上跑着两个数据库应用, 而对网络的访问需要明确和严格的用户帐号及其访问权限。明白了这一点,问题迎刃而解:只需 采用客户的系统即可。这个项目给我的教训就是:记住,假如你在诸如Access 或者

数据库数据表的设计

数据库名/HotelManagerDB 客房表/Rooms SQL语句 房间类型 insertinto RoomType values('普通单人间','否','0','1'); insertinto RoomType values('普通双人间','否','0','2'); insertinto RoomType values('豪华单人间','否','0','3'); insertinto RoomType values('豪华双人间','否','0','4'); 楼层表 insertinto Floor values('一楼'); insertinto Floor values('二楼'); insertinto Floor values('三楼'); 房间状态 insertinto RoomState values('未入住'); insertinto RoomState values('已入住'); insertinto RoomState values('空闲'); insertinto RoomState values('仓库');

客房表 insertinto Rooms values('101','1','1','60','普通单人间,房间内物品完 好.','1'); insertinto Rooms values('102','2','1','100','普通双人间,房间内物品完 好.','1'); insertinto Rooms values('201','3','2','80','豪华单人间,房间内物品完 好.','1'); insertinto Rooms values('202','4','2','140','豪华双人间,房间内物品完 好.','1'); insertinto Rooms values('301','1','3','60','普通单人间,房间内物品完 好.','1'); insertinto Rooms values('302','2','3','100','普通双人间,房间内物品完好.','1'); 客户表/Customers 权限系统表的设计

相关主题
文本预览
相关文档 最新文档