PowerBuilder作为一种优秀的数据库前端开发工具,深受广大数据库开发者的青睐,现在的数据库涉及到多媒体应用越来越多,而PowerBuilder没有像VB、Delphi那样提供开发多媒体的控件,但并不是说利用PowerBuilder就不能开发多媒体。下面就介绍利用PowerBuilder开发多媒体的三种方法(以播放视频文件AVI为例)。
一、利用OLE方法。打开要播放的多媒体的窗体,点按OLE控件,系统弹出“Insert object”对话框,选择“CreateNew”页,选取视频剪辑,在窗体上放上该OLE控件,编写窗体Open事件的脚本(比如要播放的视频文件为sample.avi):ole_1.InserFile(“sample.avi”)运行该窗体,双击该OLE,视频就播放出来了。
二、利用MCI方法。这种方法要调用Windows的API函数MciSendStringA,因此,首先要声明该函数。选“Declare/Local External Functions”菜单项,弹出“Declare Local External Functions”对话框,声明局部外部函数:Function Long mciSendStringA(red string scommand,ref string returnstr,int ilength,UNITucallback)。在窗体上放上一个命令按钮cb_play,其Text为“播放”,在cb_play的Click事件输入脚本:
string ls_command,ls_buffer,ls_filename
filename=″sample.avi″
ls_buffer=fill(Char(0),255)
ls_command=″open″+ls_filemane+″type avivideo alias avi″
mciSendStringA(ls_command,ls_buffer,255,handle(parent))
ls_command=″play avi notify″
mciSendStringA(ls_command,ls_buffer,255,handle(parent))v 运行窗体,点击该按钮就可以播放视频了。
三、利用OCX控件。Windows95的系统提供了Amovie.ocx控件,该控件提供了很多属性和函数,可通过编程修改其属性和调用其函数来控制多媒体,开发出高质量的多媒体播放器。下面我们就以开发具有播放和停止功能的多媒体播放器为例。
在要播放的窗体上,点按OLE控件,系统弹出“Insert objet”对话框,选择“Insert control”页,“选取ActiveMovieControlObject”,在窗体上放上该定制OLE控件,然后在窗体上放两个命令按钮cb_play和cb_stop,其Text分别赋值为“播放”和“停止”。
在窗体的open事件输入脚本:
ole_1.Objet.Filename(″sample.avi″)v cb_play的Click事件的脚本为:
ole_1.Object.play()
cb_stop的Click事件的脚本为:
ole_1.object.stop()
这样简单的多媒体播放器就开发好了,如果想对多媒体进行更多的控制,调用该控件相应的函数和修改其属性即可。至于Amovie.ocx控件有哪些事件、属性和函数,可通过点按Browser图标来查看。
……