通用型字段在VFP教学中的应用研究

2010-05-13 09:17
现代电子技术 2009年20期
关键词:数据传输

滕 敏

摘 要:针对当前VFP教材中通用型字段描述的缺憾,提出在教学过程中加强实际应用能力,加强数据库应用系统中多媒体数据的表现力。对在VFP 环境中如何利用通用型字段存储和使用做出一定的研究,侧重于广大师生对大量的多媒体数据的处理和管理,并给出具体实例,有助于计算机教学的效果,同时增强学生对VFP学习的兴趣和拓展知识的层面。

关键词:VFP;G字段;多媒体数据;数据传输

中图分类号:TP392文献标识码:A

文章编号:1004-373X(2009)20-131-03

Application Research of General-purpose Field in VFP

TENG Min

(Henan Judicial Police Vocational College,Zhengzhou,450011,China)

Abstract:Aiming to the shortcomings of general-purpose field description in current VFP textbooks,to strengthen the capacity of practical applications in teaching process and enhance the performance of multimedia data in system of database applications are proposed.This article makes certain research onhow to storage and use general-purpose field in the VFP environment,focusing on the vast number of teachers and students of a large number of multimedia data processing and management,andit gives specific examples,which help to effect of computer teaching,at the same time,enhances students interest in the VFP learning and expands the knowledge level.

Keywords:VFP;general-purpose field;multimedia data;data transmission

0 引 言

Visual FoxPro继承dBASE,FoxBASE和FoxPro等语言简单易用的特点,在界面与功能上均有重要提高。其中通用型字段的多媒体数据,最能反映出时代发展的需求,由单一黑白的英文操作界面进步到面向对象的程序设计,声音、图像、动画、视频等多媒体的表现形式,清晰、亲近、逼真、形象,更能直观地了解和掌握数据,使数据的主体增添了不少的活力。随着社会的不断发展,人们对信息存储和显示的要求越来越高,多媒体数据在数据库中的应用倍受关注,如学生数据库、图书数据库,以及财务数据库中的照片、图片、声音、票据等。

然而,在大多数的教科书中,对通用型G字段的应用一带而过,笔者查阅了VFP十几种教材,能对G字段详讲的仅有三本。形成这种局面的原因有两种:一是针对教育部考试中心大纲来讲,不管是理论考试,还是上机考试都没有涉及到它的使用[1];二是编者对G字段重视不够,它的叙述麻烦且实践性强。目前,许多大学生学习该课程后,不能正确使用多种格式不同的多媒体文件,动手能力差,又没有太多的参考书供学习,在实用时易走弯路,费时又费力。所以这里把教学中总结出来的关于G字段的输入和显示方法呈现给读者。

1 通用型字段数据的存储

1.1 通过剪贴板实现数据的输入

方法一:打开数据表浏览,用鼠标双击G字段中的“gen”,同时G字段编辑器被打开;然后切换到另外的应用程序,如Windows的画图程序,将选定内容复制到剪贴板上,粘贴到G字段编辑窗口中[2]。

上述操作描述了利用剪贴板将Windows的图片传送到VFP。其实,对于Word图形、Excel表格,选中其中的部分内容,包括抓拍的图像都能通过剪贴板向G字段编辑窗口传送。

在这里,当想把整篇文档(如.doc和.pdf等)或整个表格(.xls)都放在G字段窗口作为资料保存时,只需将原文件打开全选复制,“粘贴”在G字段的编辑窗口中,此时看到的是局部画面,如想查看全部,只需双击画面即可,集中存储原始资料非常方便实用。

方法二:把相关的多媒体文件拷贝后“编辑”/“粘贴”,在G字段的窗口中呈现的是一个文件图标,查看数据时只需双击图标即可。

也就是说,常用的多媒体文件如:jpg,gif,ico,wmv,wav,wma,MP3等,在资源管理器中无需打开文件,复制文件名在剪贴板上,都可以粘贴在G字段编辑器中。只是在该处显示的是包含扩展名的文件名和图标,双击后查看原数据的实际内容,而bmp,doc,xls文件除外,它们将直接看到数据。

1.2 在VFP 的数据表中添加OLE对象

打开G字段编辑器窗口,选择“编辑”/“插入对象”命令,出现插入对象对话框,若选择“新建”可以从“文件”列表框中选择要创建的对象类型;若选择 “由文件创建”,则到指定的路径选择事先建成的文件;若只是建立一种链接关系,选中“链接”复选框,然后将可插入型OLE 对象链接或嵌入到通用型字段的每个记录中[3]。链接和嵌入的OLE 对象几乎涵盖了各种类型的多媒体数据。

有些照片尺寸不一,格式不一,建立在一个G字段中存储,一旦要调出显示时,不是以图像显示,就是以文件名出现。为了达到统一图像出现,在教学中采用下面的方法,首先统一G字段编辑器中每张图片的插入方式:

(1) “编辑”→“插入对象…”→“由文件创建”→“Microsoft Word 图片”→“确定”;

(2) 由上步在随后打开的Word文档中,“插入”→“图片”→“来自文件…”(如图1所示),这里选择的余地较大。

图1 图像插入界面

1.3 用命令形式把多媒体数据文件放入G字段中

方法一:打开要插入G字段的数据表,指针定好,用替换命令来实现记录G字段内的数据插入或更新文件的内容。格式如下[4]:

Replace with

如:Replace照片with D:picturexxx.jpg

如果利用上命令语句编一程序,就可以把一批数据放入到G字段中。

方法二:该命令的一般格式如下[5]:

APPEND GENERAL[FROM FileName] [LINK]

其中:GeneralFieldName通用字段变量名称。可以用带有表别名的字段名来指定在非当前工作区中打开的表的G字段;对于FROM FileName,必须给出路径和文件全名,包括扩展名;LINK表示对象链接到G字段,不写LINK代表对象嵌入到G字段。

该命令语句方便于大批量多媒体数据的存储[6]。

例如:有100 张相片要添加到学生信息表中的“个人照片”字段上去,照片文件已按顺序编号存盘,即“1.jpg~100.jpg”,文件路径为“D:student_picture”,编写代码如下:

Use 学生信息

Count to N

Go top

For i=1 to N

Photo="D:student_picture"+alltrm(str(i))+".jpg"

Append general 个人照片 from &Photo;

Skip

Endfor

从上面几种存储G字段数据的方法中,用手工方式逐条复制和粘贴,主要适用于数据量较小,而且操作必须在交互方式下进行,既费时又费力;如果输入的数据量很大,则用命令方式实现,既快捷又方便。

2 通用型字段的显示

(1) 打开数据表,直接双击“Gen”查看内容;也可以用SELECT-SQL命令查看。最简单形式:

SELECT FROM [WHERE ]

(2) 如果通用字段存放的是图形数据,其输出还可以直接用标准格式化输出语句进行输出。命令格式如下[7]:

@ SAY BITMAP/ [CENTER]

[SIZE ,] [ISOMETRIC/STRETCH]

BITMAP用于显示一个.BMP位图文件;SIZE显示对象的大小,取默认时,以原来自然大小显示;nEXP1,nEXP2指定对象的高度和宽度;ISOMETRIC/STRETCH决定缩放图片,成比例缩放或出现充满SIZE的大小而有可能图像比例失真。

例如:编一程序自动显示上题中全部学生的照片,每张照片显示时间为2 s,程序如下:

Use 学生信息

Count to N

Go top

For i=1 to N

@3,5 SAY 个人照片

wait " " timeout 2

Skip

Endfor

(3) 采用ActiveX 绑定型控件(OLEBoundControl)显示G型字段数据。

在新建表单中,单击鼠标右键“数据环境…”添加需显示的数据表,插入ActiveX 绑定型控件(OLEBoundControl)在属性框中,把ControlSource的值直接选择表中的G字段;再插入其他控件或按钮编写代码,以使记录指针变化,及时刷新表单使控件显示一致。下面便是一个非常简单的例子。

例如:在表单中同步(表中记录指针与照片随之改变)显示“学生信息”表中G字段“个人照片”的内容。

① 用表单向导建立表单,选表中部分字段(学号、姓名、分队、个人照片);一直默认下一步直到选择“保存表单,并用表单设计器修改表单”完成;

② 进入表单设计器,调整控件的位置和字体大小,选择控件“BUTTONSET1”,把其中的cmdEdit,cmdDelete,cmdAdd,cmdPrint的Enabled和Visible两个属性统统设为.F.(运行表单时不可见此按钮);为保证数据的完整性,既不可修改也不可删除(如图2所示);

③ 移动命令按钮位置,调整到实用美观的状态即可(如图3所示)。

3 通用字段的说明

其实VFP中G字段的数据在使用时,部分数据也经常会出现修改或更新,对此,常用的命令有[8]:Replace with MODI GENERAL < GeneralFieldName >。由于G字段中存放的为非文本文件,如图形、声音、视频、动画等文件,这些数据实际上存放在数据表的备份文件(.FPT)中;当数据多媒体文件较大时,相应的备份文件会很大,影响程序的运行速度。因此,建议一些文章可以考虑将文字信息与媒体信息分别存放在不同的数据表中[9,10],建立数据表之间的关联,这样可以提高系统的运行速度。

其次在向数据表的G型字段添加内容时,由于一些操作必须使用Windows的剪贴板,如果粘贴的内容过大,或者系统的内在容量不够时,有可能造成添加内容时的操作失败,这也是无法避免的。

在数据表中存储多媒体数据的主要目的是为便于使用,所以它的显示尤为重要。针对图片存储的不同形式,图片在VFP中的显示也存在多种方式。除了前面推荐的方法,还有利用IMAGE控件进行的;利用VFP库Foxtools.fll,利用与MCI有关的API函数[11],可视类库等方法枚不胜举。由于需要编程的语句较长,专业水平要求相对高,并没有一个普遍适用的人群,在此不再赘述。

图2 表单设计器界面(一)

图3 表单设计器界面(二)

4 结 语

总之,在信息多元化的今天,多媒体技术已渗透到计算机的各个方面,并成为高级语言性能的重要标志之一。在教材中没有充分展现的通用型字段,并不代表VFP不具备充分展示多媒体数据的功能。在教学环节中不能轻视忽略,需要根据学生的特点,广泛合理灵活地使用VFP。通过充分研究、挖掘,以达到最佳的教学效果。

参考文献

[1]教育部考试中心.全国计算机等级考试考试大纲[M].北京:高等教育出版社,2004.

[2]史济民.Visual FoxPr及其应用系统开发[M].北京:清华大学出版社,2002.

[3]田银磊.Visual FoxPro 程序设计及应用[M].西安:西北大学出版社,2005.

[4]余文芳.Visual FoxPro 8.0程序设计教程[M].北京:人民邮电出版社,2004.

[5]陈博.Visual FoxPro 8.0数据库开发实例教程[M].北京:清华大学出版社,2004.

[6]江述华.数据库的图像处理方法[J].电脑知识与技术,2008(5):1 040-1 042.

[7]周晓玉,杜菁.FoxPro简明教程[M].北京:电子工业出版社,2001.

[8]史济民,汤观全.Visual FoxPro及其应用系统开发[M].北京:清华大学出版社,2004.

[9]刘璐.图片在VFP中的显示与打印技术研究[J].机械管理开发,2008,23(4):70-71.

[10]王毅.对VFP图像处理的改进[J].计算机与信息技术,2007(15):326.

[11]姜景红.有声用户界面设计技巧[J].通化师范学院学报,2006,27(2):26-28.

猜你喜欢
数据传输
具有物联网功能的医用恒温反应箱的研制
具有物联网功能的医用恒温反应箱的研制
基于ZigBee 的井下探测小助手设计
GPRS DTU的应用经验浅析
新型高速复合数据传输线缆的研究与开发
配网馈线自动化通信方式分析