第02章 VisualFoxpro 9.0项目实例

上传人:我*** 文档编号:137838708 上传时间:2020-07-12 格式:PPT 页数:17 大小:116.50KB
返回 下载 相关 举报
第02章 VisualFoxpro 9.0项目实例_第1页
第1页 / 共17页
第02章 VisualFoxpro 9.0项目实例_第2页
第2页 / 共17页
第02章 VisualFoxpro 9.0项目实例_第3页
第3页 / 共17页
第02章 VisualFoxpro 9.0项目实例_第4页
第4页 / 共17页
第02章 VisualFoxpro 9.0项目实例_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《第02章 VisualFoxpro 9.0项目实例》由会员分享,可在线阅读,更多相关《第02章 VisualFoxpro 9.0项目实例(17页珍藏版)》请在金锄头文库上搜索。

1、Visual FoxPro 9.0 应用技巧,本章通过若干实例介绍软件开发中涉及到的一些常见技巧,主要包括数据输入、数据查询、数据输出、与Excel交互、使用图形、工具栏、进度条等内容。 (下载源码就到源码网:),2.1 数据输入,2.1.1 中英文自动切换 原理 以文本框或组合框为父类新建一个子类,同时为这个新建的类添加一个属性,根据此属性的值分别调整imestatus()函数的值为0或1 ,以此来控制系统的输入法状态。,2.1 数据输入,2.1.2 组合框的记忆选择 原理 对组合框的每一次选择都作以记载,把选择的值存储到公共变量中,并把此变量的值保存到内存变量文件里。这样,每次进入组合框时

2、从内存变量文件中恢复保存的变量,就可以记忆以往的选择,从而提高操作效率。,2.1 数据输入,2.1.3 编辑框中实现自动更正的方法 原理 1、把word的自动更正资料库文件mso.acl中的汉字词组正误信息转换为.dbf文件 2、对允许输入汉字的控件的Keypress事件编写代码,对输入的汉字词组在资料库中进行校验,自动把错误的词组转换为对应正确词组。,2.1 数据输入,2.1.4 VFP智能感应的二次开发 VFP从7.0版开始增加了智能感应(IntelliSense)功能。当我们输入命令缩写及空格后,命令会自动扩展。输入函数名及左括弧、对象名及点之后,系统会自动提示相应的参数、属性、方法名等

3、供选择。 原理 智能感应的所有内容及方案都在一个表中定义,表的文件名默认为foxcode.dbf,在系统变量_foxcode中存放。修改或扩展这个表的内容就可以改变智能感应的内容。,2.2 数据查询,2.2.1 热点跟踪和悬停效果 在一个表单的各个控件之间进行焦点的转移时,控件能够在鼠标滑过的时候突出显示,实现的既是热点跟踪的效果。 原理 1、利用SpeciaEffect属性设置热点跟踪效果 2、用_mouseoverfx类突出显示效果 3、利用MouseEnter和MouseLeave事件进一步设置动态效果 4、对Grid的记录进行控制,2.2 数据查询,2.2.2 系统的查询类及其应用 原

4、理 1、VFP提供了进行查询的类库(_dataquery.vcx),应用其中的类_qbf,可以在表单的文本框中输入查询条件并显示查询结果。所有用于显示字段内容的文本框都可以用来输入相关的查询值,使用起来简单方便。 2、利用了事务回滚技术,2.2 数据查询,2.2.3 用VFP 设计数据表结构浏览器 原理 利用COPY STRUCTURE EXTENDED 命令生成一个数据表的结构描述文件 ,并把结构描述文件的前四个主要字段送给表格控件作为数据源,从而实现在一个交互界面中随意选择表文件进行结构浏览,2.3 输出报表,2.3.1 VFP 9.0中的多细节带区 Visual FoxPro 9.0的新

5、增功能:执行多细节带区功能,实现一对多关系打印 。 通过打开报表设计器的属性窗口,单击Optional Bands选项卡中的Add按钮添加一个细节带区到列表中 。 在建立多细节带区报表时,应当按一对多关系中的父表的某个具有惟一值的字段进行分组。,2.3 输出报表,2.3.2 在报表中实现每页打印指定记录数 原理 可以采用数据分组的方法来实现每页打印指定记录数,而数据分组则可以使用临时表或设置报表变量的两种方法实现。 使用临时表的方法 设置一个局部变量DetailNum的值为每页打印的记录数,根据它对记录分组,形成分组号保存到自定义字段别名GroupCount中,把所有记录的分组号以及原有字段内

6、容保存到临时表Temp2,作为报表的数据源。,2.3 输出报表,2.3.2 在报表中实现每页打印指定记录数 使用报表变量的方法 数据环境的Init 事件定义一个全局变量tobePrint,保存每页要打印的记录数。新建两个报表变量nCount和nGroup。 nCount用于统计已经打印的记录个数。 nGroup的值来自一个表达式,表示当前记录已经满足一页最大打印记录数时,则用于代表页码的变量nGroup就会增加1。,2.3 输出报表,2.3.3 在VFP中处理JPG文件 原理 不将图像文件保存到GENERAL型字段中,而是把图像文件保存到一个二进制的Memo型字段,当需要显示图像时,则将该二进

7、制Memo型字段的内容输出到一个临时文件中,然后再将临时文件名赋给Image控件或OLE Bound控件对应属性来显示图像。,2.3 输出报表,2.3.3 在VFP中处理JPG文件 将图像文件保存到二进制Memo型字段中的ftom函数; 将二进制Memo型字段中的图像保存到一个外部文件中的mtof函数。,2.4 其他技术,2.4.1 表单Grid容器中控件的动态增删及属性设置 原理 1、用AddObject(zd,Column)方法在表单的Grid1容器中添加一个“列”控件(文本框),以zd的值(选取的字段名)为控件名。 2、然后,设置控件的属性。包括宽度(Width)、可见性(Visible

8、)、控制源(ControlSource)、列标题(Header1.Caption)等。,2.4 其他技术,2.4.2 工具栏的制作 原理 1、如果不脱离VFP系统环境(应用程序扩展名为APP),可通过定制工具栏或“object.show”指令,来使用VFP系统提供的各种工具栏。 2、利用VFP系统提供的一个工具栏类tbrEditing来创建工具栏,位于SamplesClassesSamples.vcx类库中 ,可用于任意程序。 3、指定工具栏停放位置的命令ToolBar.DocknLocation,X,Y,2.4 其他技术,2.4.3 进度条的实现 原理 1、使用ActiveX控件实现进度条

9、选定表单控件工具栏的ActiveX控件,在表单上添加一个Microsoft ProgressBar Control Version 6.0控件,并设置其Max属性值,反映查询的最大次数。 2、使用_thermometer类实现进度条 _ thermometer类位于“ Microsoft Visual FoxPro 9Ffc_therm.vcx类库中,基类为Form,该类用于提供一个标准的进度显示。,2.4 其他技术,2.4.4 VFP与Excel交互 在VFP中控制Excel操作 利用CREATEOBJECT(Excel.Application) 命令生成excel对象,然后利用对象变量设置Excel 的各项属性及其复制数据。 在VFP中获取Excel数据 利用APPEND FROM TYPE XLS命令从EXCEL文件获取数据。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号