设为首页

首 页

新 闻

教 育
学 习

文 学

人 才

文 化

艺 术

书 画

论 坛

博 客

社 区

图 片

网 络

中 国

世 界

书 店

音 像

摄 影
健 康

生 活

旅 游

娱 乐

男 女

体 育

军 事

科 技

经 济

房 产
汽 车

通 信

商 城
当前位置:首页 > 科技 >> 计


Foxpro中的多媒体技术应用


作者:曹进 朱小平 徐晶 宋春来   时间:2004-10-5   阅读1259次

     数据密集型应用是目前计算机最大的应用领域。它采用数据库技术对数据资源进行统一管理,使数据能为各类用户和应用程序所共享。数据库管理系统是对数据资源进行统一管理的软件,在现代计算机系统中,已将它作为主要的系统软件之一。但在这方面的应用中人们往往局限于纯数值性的统计与分析,对于更加丰富的数据类型如图像、音频、动态视频等未加以足够的重视。目前常用的关系型数据库管理系统Visual Foxpro对于多媒体提供了较强的支持,下面分别进行介绍,供读者参考。
   
    图像控件
   
    Visual Foxpro的图像控件允许添加bmp、gif、jpg等图片格式文件。图像控件的主要属性有:
   
    picture属性:指定待显示的图片文件;
   
    backstyle属性:确定图片的背景是否透明;
   
    stretch属性: 指定怎样对图像进行大小调整,以便将其完美地放入控件范围中。如属性值设为0(剪裁方式),则超出图像控件范围的那一部分将不显示;如属性值设为1(等比缩放),图片将保持原有比例并自动调整,在图像控件中显示最大可能的图像;如果属性值设为2(伸展缩放),则图片将自动调整到正好与图像控件的高度和宽度匹配。
   
    下面是一个“图片浏览器”的设计实例,步骤如下:
   
    1.打开表单设计器,新建一空表单。
   
    2.利用表单控件向表单中添加一个图像控件,并设置其Stretch属性为2(伸展缩放)。
   
    3. 向表单上添加一个组合框,设置其RowSource
   
    Type属性为1,Rowsource属性为“*.bmp,*.jpg,*.gif”,ControlSource属性为“thisform.listl.rowsource”。为清楚起见,可在组合框中的前面添加一个标签控件,设置它的Caption属性为“文件类型”。
   
    4. 向表单上添加一列表框控件,设置其RowSource Type属性为7(文件)。
   
    5.为表单编写Active事件代码:
   
    thisform.combo1.displayvalue=1
   
    6. 为列表框编写InteractiveChange事件代码:
   
    x=thisform.listindex
   
    if x>4
   
    thisform.image1.picture=this.list(2)+this.list(x)
   
    cd this.list(2)
   
    endif
   
    说明: displayvalue指定列表框或组合框中选定数据项的第一列的内容; listindex属性指定列表框或组合框中选定数据项的索引值,也即数据项在列表框或组合框中显示的顺序号,x(=thisform.listindex)标记在列表框中选中项目的序号。
   
    当RowSourceType属性设置为“7(文件)”时,List1.List(1)表示驱动器,List1.List(2)表示路径,List1.List(3)表示分隔符,List1.List(4)为[..],表示单击它将返回上级目录,List1.List(x)表示所选中的文件名(x>4),List1.List(2)+List1.List(x)表示“路径+文件名”,也即要处理的对象。
   
    设计好以后,运行表单,表单窗口如下图所示
   
    声音的处理
   
    对象链接与嵌入(OLE)是一种软件技术,通过该技术,OLE对象如“*.WAV”等声音文件可以链接或嵌入到表单及表的通用字段中。在表单中创建OLE控件时,最简单的方法是直接利用“表单控件”工具栏上的OLE控件按钮,具体步骤如下:
   
    先单击“表单控件”工具栏上的“OLE容器控件”按钮,并拖放到表单,然后在出现的“插入对象”对话框中选择OLE对象。
   
    在“Insert Object”对话框中,提供了3种可以使用的插入对象方式:Create New(新建)、Creat from File(从文件创建)和Insert Control(插入控件)。在此选择“Create from file”选项按钮后,显示“文件”框,从中可以指定一个声音文件的路径和文件名,或利用“浏览(Browse)命令按钮定位一个适当的文件。“Link(链接)”指定将创建的对象链接到表单中。对于从文件中创建的对象,在运行时可以双击该对象,以运行或打开该文件。
   
    如果在设计中选择“3(Creat New)”选项按纽,还可以自己使用Midi设备创建新的OLE对象,如自己谱曲、录制卡拉OK等等。
   
    动态视频
   
    动态视频信息即俗称为Video信息,在Visual FoxPro平台上可以将其置入控件中,其方法仍需用到OLE控件。其操作步骤为: “新建/表单/OLE容器控件/视频剪辑/Creat From File/Browse/*.avi/打开/OK/保存/运行”,此后,如果双击创建的视频窗口, 即可以开始播放。
   
    视频控件有如下几个重要属性:
   
    1. AutoActivate属性:指定激活视频对象的方法。“0”表示人工方式,控件不自动激活,可以在程序中使用DoVerb方法激活控件;“ 1”表示获得焦点方式,如果控件中包含一个对象,那么当控件获得焦点时,提供对象的应用程序将被激活;“2”表示双击(默认值)方式,如果控件包含一个对象,那么当用户双击控件,或获得焦点时按Enter键,将激活提供对象的应用程序。注意:当AutoActivate设置为“2(双击)”时,不发生DblClick事件;“3”表示自动方式,如果控件中包含一个对象,基于对象的常规方法将激活提供对象的应用程序。
   
    2. AutoVerMenu属性: 判定用户用鼠标右键单击OLE容器控件时是否显示包含对象动作的快捷菜单。“T”表示可选,而“F”表示默认。
   
    3. Sizeable属性:指定是否可以对对象进行尺寸调整。“T”表示默认,“F”表示可选。
   
    4. Stretch属性: 指定如何对图像进行调整以适当地放入一个控件中。“0”表示剪裁方式 ;“1”表示等比缩放; “2”意味着伸展缩放,其具体含义同图像控件。
   
    动态视频的信息处理在Visual Foxpro中比图像控件更易于处理,无需编辑事件代码即可选择播放列表中的对象。
   
    OLE控件的DoVerb方法
   
    OLE控件有一个重要的方法程序DoVerb,该方法可以调用插入对象的宿主程序(如电脑中BMP格式文件的宿主程序一般是画笔),对对象进行编辑、运行等。
   
    语法:Object.DoVerb [动作参数]
   
    动作参数指示OLE对象做怎样的动作。如果省略参数,将执行宿主程序并调用该对象,比如一个BMP图像就调用画笔程序将该图像打开,类似于在表单上双击该OLE对象。
   
    以下为可选用的动作参数值与对应动作:
   
    0 :执行隐含动作。
   
    -1 :打开对象供编辑。如果程序支持现场激活,则对象可在表单中打开,如WORD、EXCEL等都可以。
   
    -2 :在另一个窗口中打开对象。
   
    -3 :如果是嵌入的对象,则启动对象并将宿主程序隐藏。这非常有用,比如表单上嵌入的是一个声音文件,可以用此参数启动声音播放器(如录音机),将声音播放出来,但录音机并不显示出来。
   
    -4 :假如对象支持现场激活,那么对象将在现场激活,并显示用户界面。如果对象不支持现场激活,将产生错误。
   
    -5 :假如将焦点放在了OLE控件上,将打开一个窗口使对象可编辑。如果对象不支持单击激活,则将产生错误。
   
    -6 :如果对象已进入编辑状态,可用此参数放弃所做的修改。
   
    要使用这个方法实现通用数据库软件的背景音乐,可在表单上放入一个绑定型OLE控件,数据源为表中的一个通用字段,字段的内容为声音,比如可以是人事档案中自我介绍的讲话录音,另外还需为表单的Active事件编制代码:
   
    thisoform.oleboundcontrol1.doverb(-3)
   
    这样按下此按钮就可以将当前记录中的声音放出来,并且不会显示出播放声音的软件。
   
    上面分别对图像控件、声音和动态视频做了简要说明,如能得到充分的利用,将能充分发挥多媒体技术的优势,开发出更加优秀的综合应用。另外,在Visual Foxpro平台上OLE数据绑定型控件对海量数据密集型应用还有其他的支持,有待进一步研究。
   
    数据密集型应用是目前计算机最大的应用领域。它采用数据库技术对数据资源进行统一管理,使数据能为各类用户和应用程序所共享。数据库管理系统是对数据资源进行统一管理的软件,在现代计算机系统中,已将它作为主要的系统软件之一。但在这方面的应用中人们往往局限于纯数值性的统计与分析,对于更加丰富的数据类型如图像、音频、动态视频等未加以足够的重视。目前常用的关系型数据库管理系统Visual Foxpro对于多媒体提供了较强的支持,下面分别进行介绍,供读者参考。
   
    图像控件
   
    Visual Foxpro的图像控件允许添加bmp、gif、jpg等图片格式文件。图像控件的主要属性有:
   
    picture属性:指定待显示的图片文件;
   
    backstyle属性:确定图片的背景是否透明;
   
    stretch属性: 指定怎样对图像进行大小调整,以便将其完美地放入控件范围中。如属性值设为0(剪裁方式),则超出图像控件范围的那一部分将不显示;如属性值设为1(等比缩放),图片将保持原有比例并自动调整,在图像控件中显示最大可能的图像;如果属性值设为2(伸展缩放),则图片将自动调整到正好与图像控件的高度和宽度匹配。
   
    下面是一个“图片浏览器”的设计实例,步骤如下:
   
    1.打开表单设计器,新建一空表单。
   
    2.利用表单控件向表单中添加一个图像控件,并设置其Stretch属性为2(伸展缩放)。
   
    3. 向表单上添加一个组合框,设置其RowSource
   
    Type属性为1,Rowsource属性为“*.bmp,*.jpg,*.gif”,ControlSource属性为“thisform.listl.rowsource”。为清楚起见,可在组合框中的前面添加一个标签控件,设置它的Caption属性为“文件类型”。
   
    4. 向表单上添加一列表框控件,设置其RowSource Type属性为7(文件)。
   
    5.为表单编写Active事件代码:
   
    thisform.combo1.displayvalue=1
   
    6. 为列表框编写InteractiveChange事件代码:
   
    x=thisform.listindex
   
    if x>4
   
    thisform.image1.picture=this.list(2)+this.list(x)
   
    cd this.list(2)
   
    endif
   
    说明: displayvalue指定列表框或组合框中选定数据项的第一列的内容; listindex属性指定列表框或组合框中选定数据项的索引值,也即数据项在列表框或组合框中显示的顺序号,x(=thisform.listindex)标记在列表框中选中项目的序号。
   
    当RowSourceType属性设置为“7(文件)”时,List1.List(1)表示驱动器,List1.List(2)表示路径,List1.List(3)表示分隔符,List1.List(4)为[..],表示单击它将返回上级目录,List1.List(x)表示所选中的文件名(x>4),List1.List(2)+List1.List(x)表示“路径+文件名”,也即要处理的对象。
   
    设计好以后,运行表单,表单窗口如下图所示:
   
   
   
   
   
   
   
   
   
   
    声音的处理
   
    对象链接与嵌入(OLE)是一种软件技术,通过该技术,OLE对象如“*.WAV”等声音文件可以链接或嵌入到表单及表的通用字段中。在表单中创建OLE控件时,最简单的方法是直接利用“表单控件”工具栏上的OLE控件按钮,具体步骤如下:
   
    先单击“表单控件”工具栏上的“OLE容器控件”按钮,并拖放到表单,然后在出现的“插入对象”对话框中选择OLE对象。
   
    在“Insert Object”对话框中,提供了3种可以使用的插入对象方式:Create New(新建)、Creat from File(从文件创建)和Insert Control(插入控件)。在此选择“Create from file”选项按钮后,显示“文件”框,从中可以指定一个声音文件的路径和文件名,或利用“浏览(Browse)命令按钮定位一个适当的文件。“Link(链接)”指定将创建的对象链接到表单中。对于从文件中创建的对象,在运行时可以双击该对象,以运行或打开该文件。
   
    如果在设计中选择“3(Creat New)”选项按纽,还可以自己使用Midi设备创建新的OLE对象,如自己谱曲、录制卡拉OK等等。
   
    动态视频
   
    动态视频信息即俗称为Video信息,在Visual FoxPro平台上可以将其置入控件中,其方法仍需用到OLE控件。其操作步骤为: “新建/表单/OLE容器控件/视频剪辑/Creat From File/Browse/*.avi/打开/OK/保存/运行”,此后,如果双击创建的视频窗口, 即可以开始播放。
   
    视频控件有如下几个重要属性:
   
    1. AutoActivate属性:指定激活视频对象的方法。“0”表示人工方式,控件不自动激活,可以在程序中使用DoVerb方法激活控件;“ 1”表示获得焦点方式,如果控件中包含一个对象,那么当控件获得焦点时,提供对象的应用程序将被激活;“2”表示双击(默认值)方式,如果控件包含一个对象,那么当用户双击控件,或获得焦点时按Enter键,将激活提供对象的应用程序。注意:当AutoActivate设置为“2(双击)”时,不发生DblClick事件;“3”表示自动方式,如果控件中包含一个对象,基于对象的常规方法将激活提供对象的应用程序。
   
    2. AutoVerMenu属性: 判定用户用鼠标右键单击OLE容器控件时是否显示包含对象动作的快捷菜单。“T”表示可选,而“F”表示默认。
   
    3. Sizeable属性:指定是否可以对对象进行尺寸调整。“T”表示默认,“F”表示可选。
   
    4. Stretch属性: 指定如何对图像进行调整以适当地放入一个控件中。“0”表示剪裁方式 ;“1”表示等比缩放; “2”意味着伸展缩放,其具体含义同图像控件。
   
    动态视频的信息处理在Visual Foxpro中比图像控件更易于处理,无需编辑事件代码即可选择播放列表中的对象。
   
    OLE控件的DoVerb方法
   
    OLE控件有一个重要的方法程序DoVerb,该方法可以调用插入对象的宿主程序(如电脑中BMP格式文件的宿主程序一般是画笔),对对象进行编辑、运行等。
   
    语法:Object.DoVerb [动作参数]
   
    动作参数指示OLE对象做怎样的动作。如果省略参数,将执行宿主程序并调用该对象,比如一个BMP图像就调用画笔程序将该图像打开,类似于在表单上双击该OLE对象。
   
    以下为可选用的动作参数值与对应动作:
   
    0 :执行隐含动作。
   
    -1 :打开对象供编辑。如果程序支持现场激活,则对象可在表单中打开,如WORD、EXCEL等都可以。
   
    -2 :在另一个窗口中打开对象。
   
    -3 :如果是嵌入的对象,则启动对象并将宿主程序隐藏。这非常有用,比如表单上嵌入的是一个声音文件,可以用此参数启动声音播放器(如录音机),将声音播放出来,但录音机并不显示出来。
   
    -4 :假如对象支持现场激活,那么对象将在现场激活,并显示用户界面。如果对象不支持现场激活,将产生错误。
   
    -5 :假如将焦点放在了OLE控件上,将打开一个窗口使对象可编辑。如果对象不支持单击激活,则将产生错误。
   
    -6 :如果对象已进入编辑状态,可用此参数放弃所做的修改。
   
    要使用这个方法实现通用数据库软件的背景音乐,可在表单上放入一个绑定型OLE控件,数据源为表中的一个通用字段,字段的内容为声音,比如可以是人事档案中自我介绍的讲话录音,另外还需为表单的Active事件编制代码:
   
    thisoform.oleboundcontrol1.doverb(-3)
   
    这样按下此按钮就可以将当前记录中的声音放出来,并且不会显示出播放声音的软件。
   
    上面分别对图像控件、声音和动态视频做了简要说明,如能得到充分的利用,将能充分发挥多媒体技术的优势,开发出更加优秀的综合应用。另外,在Visual Foxpro平台上OLE数据绑定型控件对海量数据密集型应用还有其他的支持,有待进一步研究。
   
    (计算机世界报 第48期 D18、D20)


作者声明:
  
我谨保证我是此作品的著作权人。我同意中国人人网发表此作品,同意中国人人网向其他媒体推荐此作品。未经中国人人网或作者本人同意,其他媒体一律不得转载。一旦传统媒体决定刊用,中国人人网及时通知我。在不发生重复授权的前提下,我保留个人向其他媒体的直接投稿权利。
【编者按】(注:转载除外)


相关信息
网友评论                >>> 发表您的评论
没有评论信息

  友情连接 关于人人 加盟人人 联系人人 人人广告 人人招聘 人人导航 人人未来  

人人文学网
网址:http://www.cnrr.cn 电子邮箱:cnrr.cn@163.com
总部电话:010-51656981 QQ:253581255
版权所有: 中国人人网

书画大学