如何在delphi中播放flash动画?

解决方案 »

  1.   

    方案1:Component|Import ActiveX Control...|选中“Shockwave Flash (Version 1.0)”按“Install”按钮,在你的Form上用到ShockwaveFlash控件
    方案2:用WebBrowser直接Navigator一个Flash文件
      

  2.   

    菜单Component里的Import ActiveX Control选项,再选择SWFlash.OCX (我的98上在C:\WINDOWS\SYSTEM\MACROMED\FLASH目录下)文件,进行安装,完成后,在ActiveX面板里会出现TShockwaveFlash控件,这是delphi对SWFlash.OCX的封装。现在,我们就可以用这个控件来播放flash了。拖一个flash过来放在form上,指定其Movie属性为d:\test.SWF,按F9,一切OK。delphi编程就是这么轻松、简捷。  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——背景色,red×65536+green×256+blue,-1为默认颜色。  Loop——是否循环。  Movie——指定播放的flash文件路径,可以为一个URL。  方法:  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-按窗口百分比。  事件:  OnProgress(int percent)——读取一个flash时触发。  OnReadyStateChange(int state)——状态改变时触发。
    states 可以为 0=Loading,1=Uninitialized,2=Loaded,3=Interactive,4=Complete。
      

  3.   

    Component->Import ActiveX Control...->选“Shockwave Flash (Version 1.0)”->>Install
      

  4.   

    实际上有一个前提是你的操作系统中已经安装了ShockWaveFlash组件(MicroMedia提供),否则根本不能支持。
    如果满足这个前提,你可以在Delphi中注册这个组件供自己使用。
      

  5.   

    最好把Flash做成exe,直接调用不是更方便