云联天下首页 |  登陆 |  注册 |  密码找回 |  关于我们 | 加入收藏 
首页技术资料图形图像→在C++Builder窗口中播放Flash 【字号: 】 【背景色 杏仁黄 秋叶褐 胭脂红 芥末绿 天蓝 雪青 灰 银河白(默认色)

在C++Builder窗口中播放Flash

网址来源:http://www.kehui.net发布时间: 2002-09-22 12:29:26


新疆财经学院计算机 王东  



Flash是Macromedia公司著名的平面动画制作软件,可以制作出优秀的作品,甚至有人利用Flask制作出电视节目。本文介绍一种方法,可以将Flash的动画作品加入到一般应用窗口中去。

1. 装入入ActiveX Control(SWFlash.OCX)。

准备工作:  

①用Flash 5.0 制作一个动画作品,作品名称为:a.swf,存放路径为:c:cbb。

②用Windows“开始”菜单的“搜索”命令,确定swflash.ocx文件的位置,一般情况下Windows NT用户的路径是:WinntSystem32 MacromedFlash,对于Windows 98用户来说,其目录可能是:WindowsSystemMacromed Flash。

将SWFlash.OCX装入到C++ Builder系统环境中。

①启动C++ Builder窗口界面之后,选择菜单“Component”下的“Import ActiveX Control”命令条目。

②在“Import ActiveX”对话框中,单击“Add”按钮,目的是增加新的ActiveX Control。

③在“Register Ole Control”对话框中,把查找范围确定为:“WinntSystem32 MacromedFlash”,输入或选择文件“SWFlash.OCX”,单击“打开”按钮。到此,正常情况下“ShockWave Flash (Virsion 1.0)”就已经完成了登记。

④单击“Install”按钮,装入程序模块。

建立用户应用程序,引入“Flash”控件到窗口上。

①建立新应用程序,将工作目录(路径)定义为:c:cbb。

②选取“ActiveX”标签上的“Flash”控件类型,将其拖放到“Form1”上,摆放位置参见图1,此时不包括“消失/出现”、“播放/暂停”等按钮。

③单击选中该Flash控件,查看其:name属性为:Flas1。再将其Movie属性设置为c:cbba.SWF,要求和前面所述的a.swf文件一致,以确保程序能找到a.swf文件。

④按F9键或单击运行按钮,将可以看到程序运行情况。

2.属性控制和函数调用方法。

常规属性的修改,以Visible属性为例,制作“消失/出现”按钮。

① 在Form1上,安放Button按钮,并将Caption属性设置为:消失/出现。

② 双击“消失/出现”按钮,在 Button1Click(TObject *Sender)函数体中,输入程序脚本:Flash1->Visible=!Flash1->Visible。

③按F9键或单击运行按钮,将可以验证“消失/出现”按钮的功能。

修改Playing属性,制作“播放/暂停”按钮。

① 在Form1上,再安放一个Button按钮,并将Caption属性设置为:播放/暂停。

② 双击“播放/暂停”按钮,程序脚本如下:

void __fastcall TForm1::Button2Click(TObject *Sender)

{

Flash1->Playing =! Flash1->Playing ;

}

③按F9键或单击运行按钮,将可以验证“播放/暂停”按钮的功能。

相同的方法,分别制作“放大”、“缩小”、“上移”和“下移”按钮,分别对应的脚本是:

Flash1->Zoom(50);

Flash1->Zoom(200);

Flash1->Pan(0,12,1);

Flash1->Pan(0,-12,1);

该程序最终执行情况如图1所示,以上各脚本均在C++Builder 5.0系统编译通过,并执行成功。



<p align="center">

图1 包含Flas动画的程序

3.TShockwaveFlash主要属性、方法和事件列表。  

TShockwaveFlash主要属性:

ReadyState 读一个flash文件时的状态,其中包括0=Loading、1=Uninitialized、2=Loaded、3=Interactive和4=Complete  

TotalFrames 总帧数,只有当ReadyState = 4时,能访问该属性  

FrameNum 当前播放的帧数  

Playing 播放或暂停一个flash  

Quality 指定当前渲染的质量,包括0=Low, 1=High、2=AutoLow、3=AutoHigh  

ScaleMode 缩放模式,0=ShowAll、1= NoBorder、2 = ExactFit  

AlignMode: 对齐模式,Left=+1、Right=+2、Top=+4、Bottom=+8  

BackgroundColor 背景色,-1为默认颜色  

Loop 是否循环播放  

Movie 指定播放的flash文件路径,可以为URL路径  



TShockwaveFlash主要方法(函数):

Play() 开始播放动画  

Stop() 停止播放动画  

Back() 播放前一帧动画  

Forward() 播放后一帧动画  

Rewind() 播放第一帧动画  

SetZoomRect(int left, int top, int right, int bottom) 设置缩放的区域  

Zoom(int percent) 按百分比缩放  

Pan(int x, int y, int mode) 缩放播放面板,其中模式0为按像数、1为按窗口百分比  



TShockwaveFlash主要事件如下:  

OnProgress(int percent) 读取一个flash时触发  

OnReadyStateChange(int state) 状态改变时触发。states的值可以为0=Loading、1=Uninitialized、2=Loaded、3=Interactive和4=Complete。  



充分利用TShockwaveFlash主要属性、方法和事件,可以编制出多种具体Flash嵌入式应用程序。目前,动画处理已经成为应用程序商业化的基本条件,借助Flash 5.0给我们提供的动画技术,我们的应用程序将和Flash 5.0一样“动感十足”。





kehui 

相关新闻
v 在Delphi里播flash 2002-09-22 12:35:02
v 在Delphi里播放Flash 2002-09-22 12:43:38
v 怎样在VB中播放Flash动画。 2002-09-22 13:14:11
v 用VB编写FLASH动画播放器 2002-09-22 13:14:11
v 让你的浏览器更强!过滤FLASH、控件等等 2002-12-29 14:15:24
v 在delphi中使用flash控件 2002-12-29 14:15:24
v 美国Macromedia发表“Macromedia Flash MX” 2002-12-29 17:27:30
v 推荐用 Flash做一般文字为主的页面 2002-12-29 18:11:28
v Flash播放新秀--David Flash Player V1.4 2002-12-29 18:11:28
v 芝麻开门--谈谈Flash的反编译 2003-06-28 10:03:21
  最新新闻
智慧家居
智慧家居颠覆传统智能家居
智慧云谷让智能家居变成有智慧的
智慧云谷引领智慧家居新生活
科技改变生活 智慧云谷智慧家居系
智慧家居领航者,智慧云谷助你玩
智能家居如何赢得市场美誉度?
智慧云谷智慧家居:创业者有无限
WiFi智能家居你还在用?这样的智
互联网+助推智能家居产业
智慧云谷为您打造真正的智能家居
智能家居产业需要的不是单品,而
新家如何选择开关?智慧云谷iWis
智能传感器-世界首款“智”为你的
智慧云谷开关智能安防智能空气质
智能开关品牌,如何选择智能开关
秋季干燥,智慧家居温湿度传感器
传感器助力智慧家居 感知爱家
iWiscloud智能触摸开关缔造家居装

  最新帖子
 ※室内空气污染的危害及  [sensor]
 ※超声波风速传感器在生  [sensor]
 ※这么冷清  [gabc111]
 ※手机APP操作有问题  [ssy11407]
 ※智慧云谷智慧家居将在  [cici]
 ※上传下载  [cici]
 ※下载智慧家居  [apple2008]
 ※秋季干燥,智慧家居温  [apple2008]
 ※智慧家居紧扣热点 安全  [apple2008]
 ※办公大楼如何智慧化管  [apple2008]
 ※智慧云谷工业自控的优  [apple2008]
 ※传感器助力智慧家居 感  [apple2008]
 ※智能开关品牌,如何选  [apple2008]
 ※智慧云谷开关智能安防  [apple2008]
 ※没有专业人员,如何安  [apple2008]
 ※烟台智慧云谷董事长任  [apple2008]
 ※互联网+助推智能家居产  [apple2008]
 ※WiFi智能家居你还在用  [apple2008]
 ※智慧云谷智慧家居:创  [apple2008]
 ※智能家居如何赢得市场  [apple2008]
钯碳回收 硝酸银回收 银浆回收 银焊条回收 回收银浆 氯化钯回收 氯化钯回收 氧化钯回收 回收硝酸钯 钯水回收价格 海绵钯回收 钯炭回收价格 回收镀金板 深圳钯碳回收 镇江氯化钯回收 杭州钯浆回收 银浆回收多少钱 回收钯碳公司 硝酸银的价格 那里有回收金 氯化钯回收价格 江苏擦银布回收 硝酸银价格 德州钯粉回收 银铜回收 回收钯粉 回收铂碳催化剂 佛山钯碳回收 金盐回收价格 海绵钯回收 钯碳高价回收 钯回收价格 钯炭回收