FlashPlayerとFlashムービーの使い方を探る3 FlashPlayerメソッド表-1-

このページをDeliciousに追加 このページをはてなブックマークに追加 このページをYahoo!ブックマークに追加

2005年4月5日(火)版

FlashPlayerとFlashムービーの使い方を探る3 FlashPlayerメソッド表-1-

シグマリオンIII用Flash Player Mateの中身はどうなってるの? その3


■はじめに

 第3回はFlash Player ActiveXコントロールの基本的な制御メソッドについて触れたいと思います。ソースコードの説明といっても今回紹介する部分はメソッドコールだけなので表を掲載します。

■メソッド表-1-
 FlashPlayer ActiveXコントロールのメソッド名はラッパークラスメソッド名で示していますが、クラス名やメソッド名はラッパークラスを生成させる環境によって変わります。ご自分でラッパークラスを作成された方はネーミングが良く似ていますので読み替えてくいださい。

 JavaScriptで制御する場合のメソッド名も書いておきますので、シグマリオンIIIをお持ちでない方もご利用ください。JavaScriptは簡単に編集できるのでぜひお試しください。表の下に今回のメソッドを試せるようにしておきました。HTMLもダウンロードできます

命令

意味 ActiveXラッパークラス
CShockwaveFlashのメソッド
JavaScriptの場合のメソッド
Play  LoadしたSWFファイル(Flashムービー)を再生します void Play() Play()
StopPlay  ムービーの再生を停止します。しかしサブムービークリップがループ等で動いている場合には、サブムービークリップは停止しません。
 Flash用語では親ムービーの中にある子ムービーをサブムービークリップと呼びます。各サブムービークリップは独自にタイムフレームを持っており、各フレームに記述された動作をしています。親が停止しても子は独自のタイムフレームで動いているので子のタイムフレームを停止させない限り動作を続けます。
 StopPlayで停止するのは一番親のルートにあたる部分のみです。
void StopPlay() StopPlay()
Back  フレームを1つ前に戻します。ただし第1フレームにある場合には留まります。最後尾のフレームに廻ることはありません void Back() Back()
Forward  フレームを1つ進めます。ただし最後尾フレームにある場合は留まります。先頭第1フレームに廻ることはありません。
※その2とその3に掲載してあるムービーを操作すると最後尾までゆくと先頭に戻りますが、これはWEB上でアニメーションを続けるため、最後尾のフレームに第1フレームに戻るActionScript命令gotoAndPlay(1)を記述してあるためです。
void Forward() Forward()
 Rewind  ムービーを第1フレームまで巻き戻し停止します。ただしサブムービークリップは直接制御していないためStopPlayと同様になります。 void Rewind() Rewind()
GetVariable  ムービー内の変数を得ます。変数名だけを指定した場合は一番親(ルート _root)のムービー内に定義された変数が戻ります。ですので変数aと変数_root.a同じ変数を示してます。
_rootに配置されたサブムービークリップの名前(インスタンス名)がmc1だとするとmc1内に定義された変数bは次のようにして参照できます。
 _root.mc1.b 或いは mc1.b
このようにFlashではドット"."で区切って子を参照できます。
CString GetVariable(LPCTSTR name) GetVariable( name )
文字で帰るので必要に応じてNumber()で数値に変換してください
SetVariable  ムービー内の変数を設定します。変数名は上記を参照してください。 void SetVariable(LPCTSTR name, LPCTSTR value)
値は文字列として渡します。数値をセットする場合も同様です。
SetVariable(name, value)
SetMovie ムービーをセット(ロード)します void SetMovie(LPCTSTR lpszNewValue) JavaScriptではサポートされていません。変わりにLoadMovieを使ってください。
LoadMovie ムービーを指定したレイヤーにロードします。ここではまだレイヤーには0をセットすると覚えておいてください。 void LoadMovie(long layer, LPCTSTR url) LoadMovie( layerNumber, url )

■JavaScriptお試し用


  ※↓上記サンプルダウンロードはこちらです。
フレーム中に表示されたHTML、SWF(Flashムービー)、色を変更してあるSWF、その2と同じファイルをパッケージにしたものをダウンロードする。

■終わりに

 ソースコードを公開しているので、説明は簡略にしています。C++で試しにくい場合にはJavaScriptでもお試しください。 C++の経験が十分あってもJavaScriptの経験が少ない方もいらっやると思います。Flashのプログラミングに興味をお持ちの場合、ActionScriptはJavaScriptと非常によく似ていますので、これを機会にぜひ色々お試しください。

 なお、筆者が「開発者向け談話室」などで質問等にお答えできる時間的余裕はほとんどないのでご理解/ご容赦を賜りたいと思います。



FlashPlayerとFlashムービーの使い方を探る3 FlashPlayerメソッド表-1-

Reported by かっぴー


Last-modified: Sun, 24 May 2009 23:45:30 JST (3824d)