版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
——VisualFoxPro6.0
数据库应用基础数据库的基础知识。VF基本组成部分(数据类型、函数、表达式、变量)等学习VF6.0系统的基本操作命令、表的建立、维护、查询、统计等VF6.0系统的程序设计方法(结构化程序设计、面向对象程序设计)、表单、菜单、报表设计的方法等通过商品进销存实例介绍VF的功能、数据库应用系统的基本结构及开发过程课程内容第1部分VF基础知识第2部分数据库操作第3部分程序设计第4部分VF应用系统开发
结构化程序设计思想与方法是通过将一个复杂问题划分成几个相对简单的子问题,最后将每个问题按照一定的顺序,用命令行编写过程或函数来实现。面向过程的程序设计方法。
在面向对象的程序设计(ObjectOrientedProgramming,简称为OOP)中,人们将自然界的物理对象与程序中的对象对应起来,通过分析研究每一个对象及对象之间的交互作用来完成整个系统的设计。
这是程序设计思想与方法“颠覆性的创新”在这种方法中,设计人员直接用一种称之为“对象”的程序构件来描述客观问题中“实体”,并用“对象”间的消息来模拟实体间的联系,用“类”来模拟这些实体间的共性。第八章表单设计
8.1设计表单
8.2常用表单控件
8.1设计表单返回8.1.1表单实例
【例8.1】建立表单,当用户输入一个“商品编号”时,可以在商品信息表(spxx.dbf)中查找并显示对应商品的信息。操作步骤如下:(1)打开表单设计器。选择“文件”→“新建”命令,(2)添加数据环境。(3)添加控件并设置属性。(4)对控件的事件编程。(5)保存并运行。
表单(Form)是VisualFoxPro提供的用于建立应用程序界面的最主要的工具之一,相当于WINDOWS应用程序的窗口.其扩展名为.scx。8.1设计表单返回8.1.2表单向导和表单设计器1.用表单向导创建表单启动表单向导有以下三种途径:(1)在系统菜单中选择【文件】|【新建】命令,或者单击工具栏上的“新建”按钮,打开“新建”对话框,在文件类型栏中选择“表单”。然后单击“向导”按钮。(2)在系统菜单中选择【工具】|【向导】|【表单】命令。(3)直接单击常用工具栏上的“表单向导”图标按钮。【例8.2】使用表单向导建立维护商品信息表(spxx.dbf)的表单。8.1设计表单返回2.用表单设计器创建和管理表单启动表单设计器有多种方法:(1)菜单方法:若是新建表单,在系统菜单中选择【文件】|【新建】,在文件类型对话框中选择“表单”,单击“新建文件”按钮;若是修改表单,则单击【文件】|【打开】,在打开对话框中选择要修改的表单文件名,单击“打开”按钮。(2)命令方法:在COMMAND窗口输入如下命令:
CREATEFORM<文件名>&&创建新的表单
MODIFYFORM<文件名>&&修改已有的表单(3)在项目管理器中(modifyproject),先选择文档标签,然后选择表单,单击新建按钮。若是修改表单,选择要修改的表单,单击“修改”按钮。8.1设计表单返回表单设计器环境介绍(1)表单设计器窗口
表单设计器窗口“属性”窗口表单控件工具栏表单设计器工具栏表单菜单布局工具栏8.1设计表单返回(2)属性窗口
设计表单的绝大多数工作都是在属性窗口中完成的,因此用户必须熟悉属性窗口的用法。如果在表单设计器中没有出现属性窗口,可在系统菜单中单击【显示】|【属性】,属性窗口如图所示。对象属性设置框属性说明选项卡属性列表8.1设计表单返回(3)表单控件工具栏
设计表单的主要任务就是利用“表单控件”设计交互式用户界面。“表单控件”工具栏是表单设计的主要工具。默认包含21个控件、4个辅助按钮,如右图所示:辅助按钮(1)添加控件到表单单击控件按钮,将鼠标移到表单上,然后单击表单放置控件或把控件拖至所需的大小。(2)“按钮锁定”按钮当该按钮处于按下状态时,可以从表单控件工具栏中单击选定某种控件按钮,然后在表单窗口中连续添加这种控件。(3)“生成器锁定”按钮当该按钮处于按下状态时,每次往表单添加控件,系统都会自动打开相应的生成器对话框。(如单选控件)8.1设计表单返回(4)表单设计器工具栏
打开“表单设计器”时,主窗口中会自动出现“表单设计器”工具栏,如下图所示:设置TAB键次序数据环境属性窗口代码窗口表单控件工具栏调色板工具栏布局工具栏表单生成器自动格式8.1设计表单返回(5)数据环境
表单的数据环境包括与表单交互作用的表和视图,以及表单所需要的表与表之间的关系。使用数据环境可以带来很多方便,比如在打开或运行表单时,自动打开表或视图;在关闭或释放表单时自动关闭表。打开数据环境设计器表单设计器环境下,单击“表单设计器”工具栏上的“数据环境”按钮,或选择【显示】|【数据环境】命令,即可打开“数据环境设计器”窗口,此时,系统菜单栏上将出现“数据环境”菜单。数据环境的常用属性常用的两个数据环境属性是:AutoOpenTablesAutoCloseTables
指定表单在数据环境中指定的表是否与表单一同打开或关闭。8.1设计表单返回向数据环境添加表
在数据环境设计器环境下,按下列方法向数据环境添加表或视图:
1.在系统菜单中选择【数据环境】|【添加】命令
2.右键单击“数据环境设计器窗口”,然后在弹出的快捷菜单中选择【添加】命令,打开“添加表或视图”对话框。从数据环境设计器中移去表或视图
数据环境设计器中选择要移去的表或视图,右击所选的表或视图,在出现的快捷菜单中选择“移去”命令。当从数据环境设计器中移去表时,与这个表有关的所有关系也随之消失。8.1设计表单返回在数据环境设计器中设置关系
如果添加的一些表具有在数据库中设置的永久关系,在数据环境设计器中就不用设置相应的关系,这些表之间原来的关系在数据环境中仍然有效。向表单添加绑定控件
(1)数据绑定的概念:数据绑定是指将文本框与某个数据源联系起来。用文本框的ControlSource属性来指定。数据源有:数据表的字段和变量两种。(2)数据绑定的功效:文本框与数据绑定后,控件的值便与数据源的数据一致了。这时文本框与数据源之间可以相互传递数据。对象(Object)是反映客观事物属性及行为特征。人们把自然界的物理对象与程序中的对象对应起来,将现实世界的事物抽象为程序中的对象。对象把事物的属性和行为封装在一起,形成一个相对独立的实体。在面向对象的程序设计中,对象是由属性及可以施加在这些属性上的操作(方法)所构成的统一体,它是作为独立的单元来处理的,是构成程序的基本单位和运行实体。在VisualFoxPro中,表单及控件等都是应用程序中的对象。用户通过对象的属性、事件和方法程序来处理对象。客观事物对象抽象静态特征动态特征属性方法、事件8.2
表单控件返回
控件是VisualFoxPro系统为实现各种功能而定义的类,它直观方便且功能强大,使创建表单变得更加方便。所以如果想快速设计出满意的表单,了解和掌握各个控件的性质和使用方法很重要。1标签控件
标签(Label)主要用来在表单中显示文字信息。文字信息的内容是由标签的Caption属性决定,因此Caption属性是标签控件最重要的属性。还有位置、大小、文字、背景色与前景色等属性名作用AutoSize值为.T.时,可自动调整标签区域以适应其中文字内容的大小BackStyle指定背景是否透明。值为0时透明,标签的背景就是表单背景Caption指定在标签中显示的文本Visible决定标签中显示的文本是否可见。其值为.T.时(默认)可见;为.F.时,不可见8.2
表单控件返回2文本框控件与编辑框控件
表单运行时其中的文本框(TextBox)与编辑框(EditBox)可以由用户直接输入数据与编辑数据,是实现数据输入和输出的基本控件。其内容是由Value属性决定,Value属性是文本框与编辑框控件最主要的属性。
文本框或编辑框的主要区别在于:文本框只能供用户输入一段数据,按回车键可结束输入,其数据类型可以为字符型(默认类型)、数值型、日期性、逻辑型。而编辑框数据类型只能为字符型和备注型。在编辑框中可以输入多段数据,属性名作用ControlSource指定与数据源绑定的字段,如:spxx.商品编号PasswordChar指定输入的内容是否显示为用户设置的字符。如:其值为“*”时,文本框中输入的内容都显示为“*”。多用于接收密码ReadOnly确定文本框是否为只读。值为.T.时为只读状态,文本框的值不可修改Value决定当前控件数据值的状态8.2
表单控件返回文本框的常用方法和事件
方法:
SetFocus使当前控件获得焦点。如果想让名为Text1的文本框控件获得焦点,可以引用该方法:
ThisForm.Text1.SetFocus
事件:
GotFocus事件:当控件获得焦点时发生的事件。
LostFocus事件:控件失去焦点时发生的事件。
Valid事件:在控件失去焦点之前所发生的事件。常用来触发输入数据合法性的检查。文本框生成器:可以方便地为自己的文本框设置大部分的常用属性。8.2
表单控件返回InputMask属性值InputMask属性含义x允许输入任何字符9允许输入数字和正负号#允许输入数字、空格和正负号$显示当前货币符号(由SETCURRENCY命令指定)$$在数值前面相邻的位置上显示当前货币符号(浮动货币符)*在数值左边显示*.指定小数点的位置,分隔小数点左边的数字串输入掩码字符的含义8.2
表单控件返回【例8.4】设计一个表单。要求:用文本框1的内容替换标签1的内容,用文本框2的内容替换标签2的内容。其中文本框1与商品信息表(spxx.dbf)中的“商品编号”字段绑定;文本框2的内容不能改动;表单运行后,文本框2首先获得焦点;单击命令按钮完成替换。
8.2
表单控件返回3命令按钮控件
单击命令按钮(CommandButton)来完成某个特定的控制。对于命令按钮,经常使用Enable属性来确定按钮是否有效,如果按钮的Enable属性为.F.,则该按钮不可用,其标题变为暗灰色,单击该按钮不会引发该按钮的单击事件。属性名作用Caption
设置按钮的标题(可以加\<)Enable
确定按钮是否有效。默认值为.T.;如果其值为.F.,单击该按钮不会引发该按钮的单击事件8.2
表单控件返回4命令按钮组控件
命令组控件是包含一组命令按钮的容器控件,用户可以单个或作为一组来操作其中的按钮。
在表单设计器中,为了选择命令组中的某个按钮,有如下两种方法:一、从属性窗口的对象下拉式组合框中选择所需的命令按钮;
二、用鼠标右键单击命令组,然后从弹出的快捷菜单中选择“编辑”命令,这样命令组就进入了编辑状态,用户可以通过鼠标单击来选择某个具体的命令按钮。8.2
表单控件返回常用的属性:属性名作用ButtonCount指定组中命令按钮的数目。在表单中创建一个命令组时,ButtonCount属性的默认值是2,即包含两个命令按钮。Value命令按钮组中的各个按钮被自动赋予的编号。在程序中通过检测Value的值,就可以执行为相应按钮编写的程序代码:This.value=1buttons用于存取命令组中各按钮的数组。用户可以利用该数组为命令组中的命令按钮设置属性或调用其方法例如,下面代码可以将命令组中的第二个按钮设置成隐藏的:
ThisForm.myCommandGroup1.Buttons(2).Visible=.F.8.2
表单控件返回【例8.5】设计一个利用命令按钮组完成简单计算器功能的表单。要求:用文本框1和文本框2输入数据,单击命令按钮组上的按钮完成相应计算,并在文本框3中输出结果;分母为零时,给出提示。
其他各控件属性对象名属性名属性值作用Label1Caption操作数1:标签的显示内容Label2Caption操作数2:标签的显示内容Label3Caption运算结果:标签的显示内容Text3ReadOnly.T.Text3内容只能读,不能修改8.2
表单控件返回DoCaseCaseThis.Value=1 &&按钮组中按钮1被单击
ThisForm.Text3.Value=Val(ThisForm.Text1.Value)+Val(ThisForm.Text2.Value) &&两数相加结果放入Text3文本框中
CaseThis.Value=2ThisForm.Text3.Value=Val(ThisForm.Text1.Value)-Val(ThisForm.Text2.Value)CaseThis.Value=3ThisForm.Text3.Value=Val(ThisForm.Text1.Value)*Val(ThisForm.Text2.Value)CaseThis.Value=4IfVal(ThisForm.Text2.Value)=0 &&除法分母为零
MessageBox("分母不能为零!") &&给出提示框
ElseThisForm.Text3.Value=Val(ThisForm.Text1.Value)/Val(ThisForm.Text2.Value)EndIfEndCase8.2
表单控件返回5选项按钮组控件
选项按钮组(OptionGroup)又称单选按钮组,通常含有多个按钮,当其中一个按钮被选定时,其他按钮则都会变成未选定状态。常用的属性:属性名作用ButtonCount指定组中命令按钮的数目。在表单中创建一个命令组时,ButtonCount属性的默认值是2,即包含两个命令按钮。Value命令按钮组中的各个按钮被自动赋予的编号。在程序中通过检测Value的值,就可以执行为相应按钮编写的程序代码ControlSource:指定选项组数据源buttons用于存取命令组中各按钮的数组。用户可以利用该数组为命令组中的命令按钮设置属性或调用其方法例如,下面代码可以将命令组中的第二个按钮设置成隐藏t的:
ThisForm.OptionGroup1.button(2).Visible=.F.8.2
表单控件返回【例8.6】设计一个统计商品信息表(spxx.dbf)中各商品类别记录数的表单。要求:利用选项按钮组选择类别,单击命令按钮完成统计,结果显示在文本框中。对Command1控件的Click事件编写如下代码。Selectspxx &&选择spxx表DoCaseCaseThisForm.OptionGroup1.Value=1 &&选项按钮组的第一个按钮被选中时
mlb=ThisForm.OptionGroup1.Option1.Caption&&第一个按钮的内容赋值给变量mlbCaseThisForm.OptionGroup1.Value=2mlb=ThisForm.OptionGroup1.Option2.CaptionCaseThisForm.OptionGroup1.Value=3mlb=ThisForm.OptionGroup1.Option3.CaptionCaseThisForm.OptionGroup1.Value=4mlb=ThisForm.OptionGroup1.Option4.CaptionEndCaseCountFor类别=mlbTomrecnum &&统计记录数,结果赋值给内存变量mrecnumThisForm.Label2.Caption=mlb+"记录数有: "&&显示提示信息ThisForm.Text1.Value=mrecnum &&结果放入文本框中8.2
表单控件返回6复选框控件复选框(CheckBox)又称多选框,有三种状态:其Value属性的值分别为:0或.F.,表示该选项未被选定;
取1或.T.,表示选中了复选框;
取2或Null时,表示空态.Value:用来指明复选框的当前状态,如右表:属性值说明0或.F.(默认值),未被选中1或.T.被选中>=2或null不确定,只在代码中有效复选框常用属性ControlSource属性:指定复选框的数据源Style属性:值为0时,其外观为默认的方框。值为1时且picture属性有效,则 为图形按钮picture:用来指明复选框的按钮图标文件名Caption:文本复选框的标题8.2
表单控件返回【例8.7】设计一个通过复选框选中状态改变标签字体、颜色的表单,不选中则恢复为原来状态。8.2
表单控件返回7组合框控件和列表框控件
组合框(ComboBox)和列表框(ListBox)的作用非常相似,都有一个供用户选择的列表,用户可以从中选择条目(数据项),进行某些操作。两者的主要区别:(1)列表框任何时候都显示它的列表;组合框,通常只有一个条目是可见的。用户可以单击组合框上的下三角按钮打开条目列表,从中选择。(2)组合框有两种形式:下拉组合框(Style属性为0)和下拉列表框(Style属性为2)。对下拉组合框,用户既可以从列表中选择,也可以在编辑区输入。对下拉列表框,用户只可从列表中选择。8.2
表单控件返回列表框常用属性:RowSourceType属性:指明数据源的类型。RowSource属性:指定列表框的数据源。List属性:用以存取列表框中数据条目的字符串数组。例如,LIST[1]代表列表框中的第一行(第一个数据项)。ColumnCount属性:指定列表框的列数。Value属性:返回列表框中被选中的条目。ControlSource:用户可以通过该属性指定一个字或变量用以保存用户从列表框中选择的结果。8.2
表单控件返回RowSourceType属性:指明列表框数据源的类型RowSource属性:指定列表框的数据源RowSourceType类型说明0无只能用AddItem方法或AddListItem方法添加列表项1值用逗号分隔的多个值来作为列表项2别名数据表中的各字段来作为列表项,显示的字段数取决于ColumnCount属性的值,其值为0或1,列表将显示表中第一个字段的值;如果值为3,列表将显示表中最前面的三个字段值3SQL语句指定的Select-SQL命令结果作为列表项。,须将Select语句用引号括起来4查询文件指定一个qpr文件中的各项来作为列表项,用查询的结果填充列表5数组指定的数组中的各项作为列表项6字段用逗号分隔的多个字段列表来作为列表项7文件指定的文件夹中的各文件名作为列表项8结构用指定的表中的字段名来填充列表9弹出式菜单用一个先前定义的弹出式菜单来填充列表。这一选项是为了提供向后兼容性8.2
表单控件返回2.列表框生成器
8.2
表单控件返回8.2
表单控件返回列表框的常用方法和事件(1)AddItem方法:在列表中添加一个新的数据项。如ThisForm.List1.AddItem("可口可乐"),此时RowSourceType属性必须设置为0。(2)RemoveItem方法:删除相应的数据项。如
ThisForm.List1.RemoveItem(i),即可删除第i项。(3)Clear方法:清除列表框中所有条目。如ThisForm.List1.Clear,即可清除列表框中所有条目。(4)Click事件:当单击选择列表框中的一项数据时发生。
演示实验【例8.8】设计一个表单。要求:把商品信息表(spxx.dbf)的字段添加到组合框中,在组合框中选择一个字段,可把该字段的内容添加到列表框中;在列表框中选择条目时,被选择条目的内容显示在标签中。返回8表格控件
表格控件(Grid)是VisualFoxPro的一种以表格形式显示或修改数据表中数据的控件。表格的组成(1)表格(Grid):由一或若干列组成。(2)列(Column):一列可显示表的一个字段,列由列标题和列控件组成。(3)列标题(Header1):默认显示字段名,允许修改。(4)列控件(例如Text1):该列中的每个单元格都可用此控件来显示字段值。如:thisform.grid1.column1.header1.caption=“商品价格”8.2
表单控件
返回表格控件的创建(1)由数据环境创建表格(2)用表格生成器创建表格表格属性
ColumnCount:指定表格中的列数。默认值为-1,此时表格中列出表的所有字
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《成功在哪里叶宝荣》课件
- 2024版土地使用权转让合同:某服装企业购买土地使用权3篇
- 财务销售分析报告范文
- 摩托车交易合同协议书
- 《对乙酰氨基酚生产》课件
- 《工程招标流程》课件
- 围挡制作安装合同范本模板
- 《对财富的认识图》课件
- 个人部分股权转让协议书
- 铝材供应链优化合同(2024年)
- 2024年保密教育培训
- 2024年度宾馆装修合同:设计与施工一体化协议
- 北京市朝阳区2024-2025学年九年级上学期期末模拟考试化学试卷(含解析)
- 金融时间序列
- 网络安全防护策略与指南
- 影院防恐防暴应急预案
- 农产品溯源体系构建
- 风电场消防管理标准
- 2024陕西省西安国际港务区定向招聘历年高频难、易错点500题模拟试题附带答案详解
- 2024版挖掘机月租赁合同范本
- 医院医用耗材管理委员会工作制度
评论
0/150
提交评论