- ベストアンサー
Flashで音楽プレイヤーを作りたい
下記のURLにあるように 曲目選択リストをコンボボックスを使用しないで作りたいのですが 再生と停止だけのボタンとコンボボックスでの作り方はわかるのですが リストのようにして動作させる記述と構造がわかりません。 わかるかたがいたっしゃいましたら教えていただけると幸いです。 http://www.audioleaf.com/analog2clone/
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ダイナミックテキストを持つMCを作成し そのMCをリスト状に並べます。 ■■■■■■ ■■■■■■ MC1 □□□□□□ □□□□□□ MC2 ■■■■■■ ■■■■■■ MC3 □□□□□□ □□□□□□ MC4 のようなイメージです。 ダイナミックテキストのインスタンス名をplaylistとすると MC1.playlist.text = "曲名1" とすれば曲名のリスト表示は出来ると思います。 クリックしたら曲が再生されるようにするには どのMCとどの曲が対になってるか知らなければなりません。 なのであらかじめ MC1.mp3="曲のアドレス1" などと書いておきましょう。このスクリプトの意味は MC1の中の「mp3」という変数に"曲のアドレス1"という値を入れるということです。 mp3は変数名なので名前は勝手に決めてください。 あとはクリック時の動作を書くだけです。 _root.MC1.onPress = function() { trace("曲名="+this.playlist.text); //曲名取得 trace("アドレス="+this.mp3); //曲のアドレス取得 } MC1についてまとめると //---------------------------------------------------------- MC1.playlist.text = "曲名1" MC1.mp3="曲のアドレス1" _root.MC1.onPress = function() { trace("曲名="+this.playlist.text); //曲名取得 trace("アドレス="+this.mp3); //曲のアドレス取得 //ここに曲を再生させる処理を記述 } //---------------------------------------------------------- となります。 コレをMC2、MC3、MC4についても同様に書くわけです。 1個ずつ書くのが面倒なら配列を使ってみるのも手です。
その他の回答 (1)
- perse
- ベストアンサー率74% (113/152)
>バーMCなどにも再生している曲名を表示させるには… >任意の場所に表示するような記述をすれば… そうです。#1に書いた、 >_root.MC1.onPress = function() { > trace("曲名="+this.playlist.text); //曲名取得 > trace("アドレス="+this.mp3); //曲のアドレス取得 > //ここに曲を再生させる処理を記述 >} でクリックした時に曲名もわかるので、それを表示させてあげればいいと思います。 >フォルダ内のアドレス(例:Swf/aaa.mp3)のことでしょうか? そうです。読み込む対象となる音楽ファイルへのパスのことです。 が、Flashは内部に音楽ファイルを 持つこともできます(つまりswfだけで動作する)ので、 ライブラリにある音楽ファイルのリンケージ識別子でも結構です。 詳しくはSound.attachSound()で調べてみてください。 と言いつつも音楽プレーヤーなら再生曲も日々更新されるとおもうので 外部ファイルの方がいいですね。
お礼
色々とありがとうございました!! スクリプトも勉強しつつ精進します!!
お礼
とても明確でご親切な回答ありがとうございます!! 本題と違う部分もいままでよくわからず使っていたスクリプトの 意味もわかりました!!! 初心者なのでまた質問になってしまうのですが MC1をクリックした際にストリーミングを表示しているバーMCなどにも 再生している曲名を表示させるには、onPressのFunctionでテキストを 任意の場所に表示するような記述をすればいいのでしょうか? あと蒸し返してしまうような質問ですが、曲のアドレスと言うのは 例えばフォルダ内のアドレス(例:Swf/aaa.mp3)のことでしょうか?