0

私は自分のプログラムに Flash ActiveX コントロールを埋め込んだプログラミングを行いました。ユーザーが提供する「プレイリスト」で SWF ファイルを再生します。通常、CurrentFrame と TotalFrames を比較して前方の動きを検出するタイマーを動かし続けています。ループは許可しません。CurrentFrame が減少した場合は、ファイルから飛び出します。

ただし、多くの場合、PowerPoint プレゼンテーションを SWF ファイルに変換する変換プログラムに由来する新しい種類の SWF ファイルがあり、現在ではメイン タイムライン以外のすべての処理を行っています。したがって、ActiveX コントロールによると、30 秒の SWF ファイルには 5 つのフレームしかない場合があります。それでも 30 秒間再生されますが、CurrentFrame は TotalFramesすぐに到達し、私のプログラムはその時点でファイルの再生を停止します。望ましい動作ではありません。

では、Flash ActiveX コントロールだけを使用して、Flash の再生がまだ進行中であるかどうかを判断できる方法はありますか? または、フラッシュが内部的に使用して、再生の最後に達したことを示すためにフックまたは検索できるイベントはありますか?

4

1 に答える 1

1

これについてできることはあまりありません。基本的に、期間がどういうわけかを知る必要があり、swfがその情報を提供しない場合、私は解決策を思い付くことができません。ロードされたswfを制御できる場合は、swfが終了したときに、ExternalInterfaceを使用してホストと通信できます。もちろん、swfを変更できない場合、これは機能しません。

于 2008-10-09T20:56:24.530 に答える