http://www.delphibox.com/article.asp?articleid=1980 例子In the flash movie you need to set up the action script, e.g. in response to a button click on (release) { fscommand("test", ""); } In Delphi set the event handler for the Flashplayer e.g. procedure TForm1.FlashFSCommand(ASender: TObject; const command, args: WideString); begin if command = 'test' then ;//do something here end;
1、首先你要从OCX解析得到2个文件
ShockwaveFlashObjects_TLB.pas (类库)
ShockwaveFlashObjectsEvents.pas (事件组件)
2、安装事件组件到组件面板上,(通常是在Activex),
生成2个组件ShockwaveFlash和ShockwaveFlashEvents
3、对ShockwaveFlash编写代码调用FLASH的方法(函数和过程)
对ShockwaveFlashEvents编写事件代码让FLASH调用你自己写的Delphi函数或过程。
在相应事件触发时系统自然就会让FLASH去执行你的Delphi函数.具体代码,等我忙完手上的事情就给你
例子In the flash movie you need to set up the action script, e.g. in response to a button click
on (release) {
fscommand("test", ""); } In Delphi set the event handler for the Flashplayer
e.g.
procedure TForm1.FlashFSCommand(ASender: TObject; const command,
args: WideString);
begin
if command = 'test' then ;//do something here
end;
TShockwaveFlash = class(TOleControl)
private
FOnReadyStateChange: TShockwaveFlashOnReadyStateChange;
FOnProgress: TShockwaveFlashOnProgress;
FOnFSCommand: TShockwaveFlashFSCommand;
FOnFlashCall: TShockwaveFlashFlashCall;
FIntf: IShockwaveFlash;
function GetControlInterface: IShockwaveFlash;
protected
procedure CreateControl;
procedure InitControlData; override;
function Get_InlineData: IUnknown;
procedure Set_InlineData(const ppIUnknown: IUnknown);
public
procedure SetZoomRect(left: Integer; top: Integer; right: Integer; bottom: Integer);
procedure Zoom(factor: SYSINT);
procedure Pan(x: Integer; y: Integer; mode: SYSINT);
procedure Play;
procedure Stop;
procedure Back;
procedure Forward;
procedure Rewind;
procedure StopPlay;
procedure GotoFrame(FrameNum: Integer);
function CurrentFrame: Integer;
function IsPlaying: WordBool;
function PercentLoaded: Integer;
function FrameLoaded(FrameNum: Integer): WordBool;
function FlashVersion: Integer;
procedure LoadMovie(layer: SYSINT; const url: WideString);
procedure TGotoFrame(const target: WideString; FrameNum: Integer);
procedure TGotoLabel(const target: WideString; const label_: WideString);
function TCurrentFrame(const target: WideString): Integer;
function TCurrentLabel(const target: WideString): WideString;
procedure TPlay(const target: WideString);
procedure TStopPlay(const target: WideString);
procedure SetVariable(const name: WideString; const value: WideString);
function GetVariable(const name: WideString): WideString;
procedure TSetProperty(const target: WideString; property_: SYSINT; const value: WideString);
function TGetProperty(const target: WideString; property_: SYSINT): WideString;
procedure TCallFrame(const target: WideString; FrameNum: SYSINT);
procedure TCallLabel(const target: WideString; const label_: WideString);
procedure TSetPropertyNum(const target: WideString; property_: SYSINT; value: Double);
function TGetPropertyNum(const target: WideString; property_: SYSINT): Double;
function TGetPropertyAsNumber(const target: WideString; property_: SYSINT): Double;
procedure EnforceLocalSecurity;
function CallFunction(const request: WideString): WideString;
procedure SetReturnValue(const returnValue: WideString);
procedure DisableLocalSecurity;
property ControlInterface: IShockwaveFlash read GetControlInterface;
property DefaultInterface: IShockwaveFlash read GetControlInterface;
property ReadyState: Integer index -525 read GetIntegerProp;
property TotalFrames: Integer index 124 read GetIntegerProp;
property InlineData: IUnknown index 191 read GetIUnknownProp write SetIUnknownProp;
published
property Anchors;
property TabStop;
property Align;
property DragCursor;
property DragMode;
property ParentShowHint;
property PopupMenu;
property ShowHint;
property TabOrder;
property Visible;
property OnDragDrop;
property OnDragOver;
property OnEndDrag;
property OnEnter;
property OnExit;
property OnStartDrag;
property Playing: WordBool index 125 read GetWordBoolProp write SetWordBoolProp stored False;
property Quality: Integer index 105 read GetIntegerProp write SetIntegerProp stored False;
property ScaleMode: Integer index 120 read GetIntegerProp write SetIntegerProp stored False;
property AlignMode: Integer index 121 read GetIntegerProp write SetIntegerProp stored False;
property BackgroundColor: Integer index 123 read GetIntegerProp write SetIntegerProp stored False;
property Loop: WordBool index 106 read GetWordBoolProp write SetWordBoolProp stored False;
property Movie: WideString index 102 read GetWideStringProp write SetWideStringProp stored False;
property FrameNum: Integer index 107 read GetIntegerProp write SetIntegerProp stored False;
property WMode: WideString index 133 read GetWideStringProp write SetWideStringProp stored False;
property SAlign: WideString index 134 read GetWideStringProp write SetWideStringProp stored False;
property Menu: WordBool index 135 read GetWordBoolProp write SetWordBoolProp stored False;
property Base: WideString index 136 read GetWideStringProp write SetWideStringProp stored False;
property Scale: WideString index 137 read GetWideStringProp write SetWideStringProp stored False;
property DeviceFont: WordBool index 138 read GetWordBoolProp write SetWordBoolProp stored False;
property EmbedMovie: WordBool index 139 read GetWordBoolProp write SetWordBoolProp stored False;
property BGColor: WideString index 140 read GetWideStringProp write SetWideStringProp stored False;
property Quality2: WideString index 141 read GetWideStringProp write SetWideStringProp stored False;
property SWRemote: WideString index 159 read GetWideStringProp write SetWideStringProp stored False;
property FlashVars: WideString index 170 read GetWideStringProp write SetWideStringProp stored False;
property AllowScriptAccess: WideString index 171 read GetWideStringProp write SetWideStringProp stored False;
property MovieData: WideString index 190 read GetWideStringProp write SetWideStringProp stored False;
property SeamlessTabbing: WordBool index 192 read GetWordBoolProp write SetWordBoolProp stored False;
property Profile: WordBool index 194 read GetWordBoolProp write SetWordBoolProp stored False;
property ProfileAddress: WideString index 195 read GetWideStringProp write SetWideStringProp stored False;
property ProfilePort: Integer index 196 read GetIntegerProp write SetIntegerProp stored False;
property AllowNetworking: WideString index 201 read GetWideStringProp write SetWideStringProp stored False;
property OnReadyStateChange: TShockwaveFlashOnReadyStateChange read FOnReadyStateChange write FOnReadyStateChange;
property OnProgress: TShockwaveFlashOnProgress read FOnProgress write FOnProgress;
property OnFSCommand: TShockwaveFlashFSCommand read FOnFSCommand write FOnFSCommand;
property OnFlashCall: TShockwaveFlashFlashCall read FOnFlashCall write FOnFlashCall;
end;
如果还有什么具体问题,你自己先写几段代码后再提出,一定耐心解答