系统实施12.docx

上传人:b****5 文档编号:24681577 上传时间:2023-05-31 格式:DOCX 页数:16 大小:449.49KB
下载 相关 举报
系统实施12.docx_第1页
第1页 / 共16页
系统实施12.docx_第2页
第2页 / 共16页
系统实施12.docx_第3页
第3页 / 共16页
系统实施12.docx_第4页
第4页 / 共16页
系统实施12.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

系统实施12.docx

《系统实施12.docx》由会员分享,可在线阅读,更多相关《系统实施12.docx(16页珍藏版)》请在冰豆网上搜索。

系统实施12.docx

系统实施12

系统实施1:

系统输入界面设计与实现

(一)实验目的

VFP输入操作的目的是保证向系统输入正确的数据,并力争做到输入方法简单、迅速、经济和方便。

(二)实验内容和实验类型

实验内容:

首先建立学生、课程和成绩三张表的表结构,然后设计表记录输入界面,最后完成基础数据的输入。

为了保证输入的正确性,应遵循最小量、简单性和早检验的原则。

在设计记录格式时,可采用块风格、阴影、选择框、颜色等技术。

实验类型:

设计性实验。

(三)实验主要步骤

1.建立学生、课程和成绩表的结构,

2.建立学生、课程和成绩信息的输入界面,如图1、图2和图3所示。

图1学生表记录输入界面

1)学生表记录输入界面说明

●单击“添加”按钮,将各文本框等控件的内容清空;

THISFORM.TEXT3.VALUE=CTOD("//")

THISFORM.TEXT4.VALUE=000.00

THISFORM.TEXT1.SETFOCUS

THISFORM.REFRESH

●单击“保存”按钮,将各文本框内容存入学生表中。

该表单的数据环境中引入了学生.DBF。

APPEBLANK

REPL学号WITHTHISFORM.TEXT1.VALUE

REPL姓名WITHTHISFORM.TEXT2.VALUE

REPL性别WITHTHISFORM.CHECK1.VALUE

REPL出生年月WITHTHISFORM.TEXT3.VALUE

REPL简历WITHTHISFORM.EDIT1.VALUE

REPL奖学金WITHTHISFORM.TEXT4.VALUE

THIS.ENABLED=.F.

THISFORM.SETALL("VALUE","","TEXTBOX")

THISFORM.CHECK1.VALUE=.F.

THISFORM.EDIT1.VALUE=""

THISFORM.COMMAND1.SETFOCUS

图2课程表记录输入界面

2)课程表记录输入界面说明

●单击“添加”按钮,将各文本框控件的内容清空;

●单击“保存”按钮,将各文本框内容存入课程表中,该表单的数据环境中引入了课程.DBF。

成绩表记录输入界面

3)成绩表记录输入界面说明

●表单初始运行时,“姓名”和“课程名”不可见;

●当在“学号”或“课程号”列表框中选择某一值时,其相应的“姓名”或“课程名”显示在表单右侧;

●该表单的数据环境中引入了学生.DBF、课程.DBF和成绩.DBF,组合框“COMBO1”和“COMBO2”的“STYLE”属性设为“1-下拉列表框”,“ROWSOURCETYPE”属性设为“6-字段”,“ROWSOURCE”属性分别设为“学生.学号”和“课程.课程号”。

SELE成绩

APPEBLANK

REPL学号WITHTHISFORM.COMBO1.VALUE,;

课程号WITHTHISFORM.COMBO2.VALUE,;

成绩WITHVAL(THISFORM.TEXT1.VALUE)

THIS.ENABLED=.F.

THISFORM.SETALL("VALUE","")

THISFORM.COMBO1.SETFOCUS

THISFORM.LABEL1.VISIBLE=.F.

THISFORM.LABEL2.VISIBLE=.F.

THISFORM.TEXT2.VISIBLE=.F.

THISFORM.TEXT3.VISIBLE=.F.

THISFORM.COMMAND1.SETFOCUS

(四)实验环境和工具

VisualFoxpro6.0。

系统实施2:

系统查询设计与实现

(一)实验目的

掌握常用信息查询功能的设计及程序实现方法。

(二)实验内容和实验类型

实验内容:

学习根据特定系统设计、实现信息查询功能。

实验类型:

设计性实验。

(三)实验主要步骤

1.学生、课程和成绩信息查询的具体操作界面如图1所示。

图1

2.成绩信息查询的具体操作界面如图2所示。

图2

3.模糊查询的具体操作步骤和界面如图3所示(*模糊查询不作要求,学生可视具体情况选择完成)。

1)步骤

首先确定需要查询的数据,据此分析用于查询这些数据的查询条件。

可设置单个查询字段,也可设置几个查询字段供用户选择,形成组合条件查询;同时提供选项,由用户选择进行精确查询或者模糊查询。

新建表单,设置表单的Caption属性,并调整表单大小、位置。

放置各类控件,包括提示信息(Label)、输入控件(Text)、选项控件(复选框/选项按钮组)、按钮(“确定”、“退出”)、查询结果输出控件(Grid)等。

编辑按钮Click事件代码、Grid控件初始化代码。

运用SQL语言实现查询功能,用AND组合多个查询条件,用精确比较(“==”)实现精确查询,用包含操作符(“$”)实现模糊查询。

2)示例

◆学生数据查询,如图3所示。

图3

新建表单,取名为“学生查询”,“caption”属性为“学生查询”。

如图所示添加控件。

其中复选框用于指示该字段是否作为查询条件;选项按钮组用于选择精确查询还是模糊查询。

双击“确定”按钮,编辑CLICK事件的代码。

首先将3个文本框内容去空格后赋值给相应变量s1,s2,s3。

根据单选按钮和复选框的值设置查询条件字符串S:

若单选按钮组的值为1,则为精确查询,在条件中使用精确比较运算符“==”,例如以学号为查询条件进行查询则可将条件写成“alltrim(学号)==alltrim(thisform.text1.value)”;若单选按钮组的值为2,则为模糊查询,在条件中使用包含运算符“$”,例如以学号为查询条件进行查询则可将条件写成“alltrim(thisform.text1.value)$alltrim(学号)”。

在此前提下,若某个复选框被选中,即值为1,则使用此字段为查询条件之一,例如名称为“学号”的复选框被选中,则可在字符串S中加上形如“andalltrim(学号)==alltrim(thisform.text1.value)”的字符串。

若字符串S为空则提示用户输入查询条件。

最后执行SQL语句,以S作为查询条件,如“select*from学生where&Sintocursorcursor_name”,将查询结果存入游标。

最后将表格控件的数据源设为游标,并显示表格。

双击“退出”按钮,编辑CLICK事件的代码。

关闭当前窗口。

双击GRID1控件,编辑“Init”事件代码。

将数据源设为空,并隐藏控件。

普通成绩查询:

select成绩

DELETEALL

SELECT学生

LOCATEFOR学号=ALLTRIM(THISFORM.TEXT1.VALUE)

IFFOUND()

THISFORM.TEXT2.VALUE=姓名

select成绩

RECALLFOR学号=学生.学号&&恢复逻辑删除记录

else

messagebox("查无此人!

")

ENDIF

THISFORM.TEXT1.SELECTONENTRY=.T.&&将学号输入框设置为自动选定

THISFORM.TEXT1.SETFOCUS

THISFORM.REFRESH

学生模糊查询:

学生模糊查询:

sxh=alltrim(thisform.text1.value)

sxm=alltrim(thisform.text2.value)

snl=alltrim(thisform.text3.value)

scondition=".t."

ifthisform.Optiongroup1.Value=1&&精确查询

ifthisform.Check1.value=1

scondition=scondition+"andalltrim(学号)=="+'"'+sxh+'"'

endif

ifthisform.Check2.value=1

scondition=scondition+"andalltrim(姓名)=="+'"'+sxm+'"'

endif

ifthisform.Check3.value=1

scondition=scondition+"andyear(date())-year(出生年月)=="+snl

endif

else&&模糊查询

ifthisform.Check1.value=1

scondition=scondition+"andalltrim(学号)like"+'"'+"%"+sxh+"%"+'"'

endif

ifthisform.Check2.value=1

scondition=scondition+"andalltrim(姓名)like"+'"'+"%"+sxm+"%"+'"'

endif

ifthisform.Check3.value=1

scondition=scondition+"andyear(date())-year(出生年月)="+snl

endif

endif

ifscondition==".t."

messagebox("请输入查询条件!

",0+48+0,"提示")

return

endif

select*;

from学生;

where&scondition;

orderby学号;

intocursorcx1

thisform.grid1.recordsource="cx1"

thisform.grid1.visible=.t.

thisform.Refresh

 

◆课程表数据查询,如图4所示。

图4

新建表单,取名为“课程查询”,“Caption”属性为“课程查询”。

如图所示添加控件。

其中复选框用于指示该字段是否作为查询条件;选项按钮组用于选择精确查询还是模糊查询。

双击“确定”按钮,编辑CLICK事件的代码。

首先将3个文本框内容去空格后赋值给相应变量s1,s2,s3。

根据单选按钮和复选框的值设置查询条件字符串S:

若单选按钮组的值为1,则为精确查询,在条件中使用精确比较运算符“==”,例如以课程号为查询条件进行查询则可将条件写成“alltrim(课程号)==alltrim(thisform.text1.value)”;若单选按钮组的值为2,则为模糊查询,在条件中使用包含运算符“$”,例如以课程号为查询条件进行查询则可将条件写成“alltrim(thisform.text1.value)$alltrim(课程号)”。

在此前提下,若某个复选框被选中,即值为1,则使用此字段为查询条件之一,例如名称为“课程号”的复选框被选中,则可在字符串S中加上形如“andalltrim(课程号)==alltrim(thisform.text1.value)”的字符串。

若字符串S为空则提示用户输入查询条件。

最后执行SQL语句,以S作为查询条件,如“select*from课程where&Sintocursorcursor_name”,将查询结果存入游标。

最后将表格控件的数据源设为游标,并显示表格。

双击“退出”按钮,编辑CLICK事件的代码。

关闭当前窗口。

双击GRID1控件,编辑“Init”事件代码。

将数据源设为空,并隐藏控件。

◆成绩查询,如图5所示。

图5

新建表单,取名为“成绩查询”,“Caption”属性为“成绩查询”。

如图所示添加控件。

其中选项按钮组用于选择精确查询还是模糊查询。

双击“确定”按钮,编辑CLICK事件的代码。

首先将文本框内容去空格后赋值给相应变量s1。

根据单选按钮和复选框的值设置查询条件字符串S:

若单选按钮组的值为1,则为精确查询,在条件中使用精确比较运算符“==”,例如以学号为查询条件进行查询则可将条件写成“alltrim(学号)==alltrim(thisform.text1.value)”;若单选按钮组的值为2,则为模糊查询,在条件中使用包含运算符“$”,例如以学号为查询条件进行查询则可将条件写成“alltrim(thisform.text1.value)$alltrim(学号)”。

若字符串S为空则提示用户输入查询条件。

最后执行SQL语句,以S作为查询条件,如“select学生.学号,学生.姓名,课程.课程名,成绩.分数from学生,课程,成绩where&Sintocursorcursor_name”,将查询结果存入游标。

最后将表格控件的数据源设为游标,并显示表格。

双击“退出”按钮,编辑CLICK事件的代码。

关闭当前窗口。

双击GRID1控件,编辑“Init”事件代码。

将数据源设为空,并隐藏控件。

(四)实验环境和工具

VisualFoxpro6.0

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1