在C++Builder窗口中播放Flash
新疆财经学院计算机 王东
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
|
|
智慧家居
智慧家居颠覆传统智能家居
智慧云谷让智能家居变成有智慧的
智慧云谷引领智慧家居新生活
科技改变生活 智慧云谷智慧家居系
智慧家居领航者,智慧云谷助你玩
智能家居如何赢得市场美誉度?
智慧云谷智慧家居:创业者有无限
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]
|