Delphi 操作Flash D7~XE10都有 导入Activex控件 shockwave

时间:2023-08-08 08:22:20

http://www.cnblogs.com/devcjq/articles/2906224.html

Flash是Macromedia公司出品的,用在互联网上动态的、可互动的shockwave。它的
优点是体积小,可边下载边播放,这样就避免了用户长时间的等待。
FLASH可以用其生成动画,还可在网页中加入声音。这样你就能生成多媒体的图形和界面,而使文件的体积却很小。
FLASH虽然不可以象一门语言一样进行编程,但用其内置的语句并结合
javaSCRipE,您也可作出互动性很强的主页来。
FLASH另外一个特点就是必须安装插件PLUG-IN,才能被浏览器所接受!当然这也
避免了浏览器之间的差异,使之一视同仁!
但是你知道吗?在delphi中可以直接打开flash动画,并控制它播放和停止。你还
可以得到它的总帧数,知道怎么实现的吗?请跟我来。
在delphi中的Component|Import ActiveX Contrals...中选中 "Shockwave
Flash(Version 1.0)",并单击Install,会出现一个install窗口。
如果要把它添加到一个已经存在的包中,在"into existing package"对话框中的
"File name:"窗口中选择你想安装的路径,并单击"OK";会弹出一个确认的对话框,它
问你"Package dclusr50.bpl will be rebuilt. Continue?",单击"Yes";在弹出的窗
口中单击击"install",该插件就安装完毕。
如果要把它添加到一个新建的包中,在"into new package"对话框中的 "File
name:"窗口中选择你想安装的路径,并新建一个包,假如命名为test,并单击"OK";它
问你"Package test.bpl will be built. Continue?",单击"Yes"。 在弹出的窗口中单
击击"install",该插件就安装完毕。
这时,你会在控件条的ActiveX下发现一个新的控件,名字为ShokewaveFlash, 单
击它把它放在form中,在该form中放一个OpenDialog控件和一个panel,在该panel上放
四个button,他们的caption属性分别命名为"Openfile","Play","Stop","Close".设置
panel1,ShockwaveFlash的Align 属性分别为Alleft 和AlClient; 分别在这四个
Button的OnClick事件中写下如下代码: PRocedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
ShockwaveFlash1.Movie:=
OpenDialog1.FileName;
end; procedure TForm1.Button2Click(Sender: TObject);
begin
ShockwaveFlash1.Play;
end; procedure TForm1.Button3Click(Sender: TObject);
begin
ShockwaveFlash1.StopPlay;
end; procedure TForm1.Button4Click(Sender: TObject);
begin
ShockwaveFlash1.FreeOnRelease;
close;
end;
你可以得到打开的flash图像的总帧数,在panel1上添加一个label,在form1的
OnClick事件中写下如下代码 procedure TForm1.FormCreate(Sender: TObject);
begin
label1.caption:=shockwaveflash.totalframes;
end; 你还可以控制该打开的flash图像从那一帧开始播放,
在panel1上添加一个button和一个Edit控件, 在该button的OnClick事件中添加如下代码。
if ShockwaveFlash1.playing then
ShockwaveFlash1.GotoFrame(SpinEdit1.Value);
ShockwaveFlash1.Play;
在edit中填上你想跳到的帧,并单击该button,你即可实现该功能。
怎么样,试试吧,效果还不错吧 资料引用:http://www.knowsky.com/335327.html 转自:http://www.knowsky.com/335327.html