トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   迷える子羊の部屋【初心者専用】
     シークバーとボリュームバーのハンドルが残ってしまう
投稿するにはまず登録を

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
moonchilds
Åê¹ÆNo.39102
投稿日時: 2008-6-5 22:28
新米
居住地:
投稿: 2
使用環境:
Re: シークバーとボリュームバーのハンドルが残ってしまう
mayor 様
早速にありがとうございました。
不足な情報から推測してご解答頂き、しかも全くその通りで、解決致しました。

本を読んで勉強していたつもりですが、mayor 様に言われて本で読んだだけの知識と
現実がかみ合ったような感じです。

以後、質問の際には注意します。失礼いたしました。
ひろゆき
Åê¹ÆNo.39101
投稿日時: 2008-6-5 21:27
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: シークバーとボリュームバーのハンドルが残ってしまう
何をなさっているのか、曖昧です。
もっと明確に説明された方がよいでしょう。

FLVPlaybackコンポーネントが配置されているムービークリップに
インスタンス名はついているのでしょうか?
ついているのであれば、そのインスタンス名も明らかにされた方が良いでしょう。

「第1フレーム」というのが、「_rootの」第1フレームを指し、
また、動画の終了後、「_rootの」第2フレーム以降へ移動させたいということでしょうか?

どう変更するか、とのことですが、
スクリプト自体は、どこに記述してもよいのでしょうか?


仮に、FLVPlaybackコンポーネントを配置した
ムービークリップのインスタンス名が mc ならば、

_root 第1フレーム
obj = new Object();
obj.complete = function() {
	gotoAndPlay(2);
};
mc.my_FLVPlybk0.addEventListener("complete",obj);


mc 第1フレーム
obj = new Object();
obj.complete = function() {
	_parent.gotoAndPlay(2);
};
my_FLVPlybk0.addEventListener("complete",obj);

あたりで動くのではないでしょうか。


----------------
質問する際は、回答者に具体的な情報を与えてください。

moonchilds
Åê¹ÆNo.39099
投稿日時: 2008-6-5 18:07
新米
居住地:
投稿: 2
使用環境:
Re: シークバーとボリュームバーのハンドルが残ってしまう
初めて投稿する、初心者です。
シークバーとボリュームバーのハンドルが残ってしまうことで、悩みつづけこちらにたどり着きました。大変助かりました。
FLVPlayerをムービークリップに入れることで本題は解消しましたが、私はFLVの終りを待って進行するムービーを作っています。
今までの第1フレームに記述していた、終りを待つ部分の

obj = new Object();

obj.complete = function() {
gotoAndPlay(2);
};

my_FLVPlybk0.addEventListener("complete",obj);

が効かなくなったのですが、どう変更すればよいのでしょうか。
ご伝授いただけますでしょうか。
よろしくおねがいいたします。


masahiro
Åê¹ÆNo.25566
投稿日時: 2006-5-15 17:37
新米
居住地: tokyo
投稿: 8
使用環境:
Win2000,Flash8Pro
Re: シークバーとボリュームバーのハンドルが残ってしまう
野中文雄さん、何度もありがとうございます。

FLVPlaybackのパラメータをプロパティインスペクタで指定するほうのやり方でうまくいきました。
プロジェクタファイル(test.exe)とFLVファイル(sample.flv)をひとつのフォルダ(flvフォルダ)にいれて、CD-Rに焼いて再生できるようになりました。

FLVPlaybackコンポーネントのインスタンス名はmy_FLVPlaybackとしました(重ねてのご指摘、本当にありがとうございます)。
うまく動作しないファイルをあちこち手直していたのをやめて、すべて、(コピーなしで)作り直したら、動作しました。

前回投稿の上のリンクにあったアクションパネルにスクリプトを書く方法では、プレビューは普通に出るのですが、
プロジェクタをダブルクリックすると、ボリュームバーとミュートボタンだけはっきり表示され、バックボタン、プレイポーズボタン、ストップボタンはうっすらと表示され、
シークバーは白抜き状態でFLVファイルは表示されませんでした。

スクリプトについてしかっりした理解ができていないと思いますので、学習を積み重ねて理解できるようにしていきたいと思います。

FLASHの入ってないPCあるいはMacintoshでも、軽い動作で動画再生を含むCDコンテンツが見れるようにしたい、という当初の希望は、
ほぼ実現可能になりました(*.exe 1ファイルで、と思っていたのですが*.exe+*.flv 2ファイルでも、_rootのタイムラインにMPEGファイルを読ませるより
FLVPlaybackコンポーネントは動作が軽くて良かったです)。

何度もていねいに教えていただきありがとうございました。
野中文雄
Åê¹ÆNo.25512
投稿日時: 2006-5-11 21:48
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: シークバーとボリュームバーのハンドルが残ってしまう
FLVファイルは、「PC内にある」のではないのですか?
引用:
masahiroさんは書きました:
contentPathの設定の仕方が、「FLVファイルの参照」ダイアログの画面では、PC内にあるものしか選択できず、

私の環境では、そのようなアラートは出ません。flaファイルをFLVと同じ場所に保存してから、設定をされていますよね。
引用:
同一フォルダ内にFLVファイルを置くつもりでファイル名だけいれてOKを押すと「FLVをロードできませんでした」
というアラートが出てしまいました。

念のため、[プロパティ]インスペクタの[contentPath]に入力したファイル名は、削除されていますか? FLVファイルを、「デスクトップ」などに置いてはいないですよね。
引用:
my_FLVPlybk.contentPath =
を(同一フォルダ内を想定して)ファイル名のみにし、プロジェクタをパブリッシュして、
FLVファイルと同一フォルダ内に入れてダブルクリックしても画面は真っ白なままでした。

flvPlaybackもNGです。
引用:
インスタンス名のつけ方については、
おっしゃるとおりだと思います。書き出すとき紛らわしくて困りました。今後は
flvPlayback.seekBar = My_seekbar;
のような形にしたいと思います


----------------
 

masahiro
Åê¹ÆNo.25510
投稿日時: 2006-5-11 19:18
新米
居住地: tokyo
投稿: 8
使用環境:
Win2000,Flash8Pro
Re: シークバーとボリュームバーのハンドルが残ってしまう
え!「FLVファイルを、プロジェクタと一緒に、CDに書込んで」再生することもできるのでしょうか?

contentPathの設定の仕方が、「FLVファイルの参照」ダイアログの画面では、PC内にあるものしか選択できず、
同一フォルダ内にFLVファイルを置くつもりでファイル名だけいれてOKを押すと「FLVをロードできませんでした」
というアラートが出てしまいました。

下記のリンクを参考にしてもやってみました。
http://livedocs.macromedia.com/flash/8_jp/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00003538.html

記載のwater.flvの再生はできましたが、
my_FLVPlybk.contentPath =
を(同一フォルダ内を想定して)ファイル名のみにし、プロジェクタをパブリッシュして、
FLVファイルと同一フォルダ内に入れてダブルクリックしても画面は真っ白なままでした。

何かリンク先の記載以外に必要なことがあるのでしょうか?


インスタンス名のつけ方については、
おっしゃるとおりだと思います。書き出すとき紛らわしくて困りました。今後は
flvPlayback.seekBar = My_seekbar;
のような形にしたいと思います
(下記リンクを字句どおり引き写していました)。
http://www.adobe.com/jp/devnet/flash/articles/custom_flvcomp_03.html
ご指摘ありがとうございます。
野中文雄
Åê¹ÆNo.25508
投稿日時: 2006-5-11 18:08
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: シークバーとボリュームバーのハンドルが残ってしまう
FLVファイルを、プロジェクタと一緒に、CDに書込んでも再生されませんか? ただし、Flash 8でも2バイトパス問題が再発している可能性は高いので、お気をつけください。

WindowsのプロジェクタでloadMovieが実行されない
外部FLVファイルがローカルで読込まれない
引用:
masahiroさんは書きました:
今まで、ローカル上でしか試していなかったのでFLVPlaybackというのはパブリッシュのときにFLVファイルも
プロジェクタに書き出してくれるものと思い込んでましたが、ストリーミングにしか使えないものなのですね。

ところで、前の回答でひとつご注意を忘れました。

Flash 8ヘルプ[ActionScript 2.0の学習] > [シンタックスと言語の基礎] > [シンタックス、ステートメント、および式について] > [大文字と小文字の区別について]より引用:
大文字と小文字を使い分けることで、2 つの識別子を区別しないでください。大文字と小文字ではなく、インスタンス名、変数名、またはクラス名を変更します。

引用:
masahiroさんは書きました:
flvPlayback.seekBar = seekbar;


----------------
 

masahiro
Åê¹ÆNo.25507
投稿日時: 2006-5-11 17:46
新米
居住地: tokyo
投稿: 8
使用環境:
Win2000,Flash8Pro
Re: シークバーとボリュームバーのハンドルが残ってしまう
ひろゆきさん、野中文雄さん、永井勝則さん、ありがとうございます。
うまく動作しました。

1.新規ファイルの作成、挿入メニュー→新規シンボル、名前をplayerに、タイプをムービークリップにしてOK、
フレーム1のステージに各コンポーネントをドラッグし、それぞれプロパティインスペクタで名前を変更、
FLVPlaybackのcontentPathを指定、ASレイヤーを追加1フレームのアクションパネルに

flvPlayback.backButton = backbtn;
flvPlayback.playPauseButton = playpausebtn;
flvPlayback.stopButton = stopbtn;
flvPlayback.seekBar = seekbar;
flvPlayback.muteButton = mutebtn;
flvPlayback.volumeBar = volbar;

を記入。_rootに戻り、フレーム1のアクションパネルに
stop();
を記入。

2._rootに新規レイヤーを追加、フレーム11にキーフレームを追加、フレーム1にGoButtonを作りました。

ムービープレビューすると、FLVファイル再生中、GoButtonでフレーム11に移動しても
シークバー、ボリュームバーのハンドルが残らなくなりました。FLVPlayerをムービークリップに入れるなんて
考えつきもしなかったので、助かりました。
本当にありがとうございました。


以上のテストファイルを、Windowsプロジェクタでパブリッシュし、CD-Rに焼いて動作確認して大成功、
と思ったのですが、別のPCにそのCDを入れると、最初のフレームの画像も出ませんでした。
今まで、ローカル上でしか試していなかったのでFLVPlaybackというのはパブリッシュのときにFLVファイルも
プロジェクタに書き出してくれるものと思い込んでましたが、ストリーミングにしか使えないものなのですね。
http://livedocs.macromedia.com/flash/8_jp/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00003538.html

MPEGファイルをタイムラインに読み込むか、外部SWFファイルにしてloadMovieで読み込むしかないのでしょうか?
シークバーがうまく作れなくて、動きがカクカクして動作が不安定で、FLVPlaybackコンポーネントは動きが
軽くて安定していて使いやすいなぁと思ったのですが。

とにもかくにも、自分ではわかりそうもないことで身動き取れなくなっていましたので、本当にどうもありがとうございました。
野中文雄
Åê¹ÆNo.25501
投稿日時: 2006-5-11 0:42
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: シークバーとボリュームバーのハンドルが残ってしまう
インスタンスの存在は消えず、名前は重複したままだからでしょうね。
引用:
永井勝則さんは書きました:
unloadMovie()を2回実行しても1個残ります。
_level0.handle_mc.unloadMovie();
_level0.handle_mc.unloadMovie();

気になったので、少し試してみました。

FLVPlaybackインスタンスをflvPlaybackとする元のご質問と同じ前提で、つぎのようにhandle_mcのインスタンス名を変更すればふたつとも消すことは可能でした。
var i:Number;
if (i == undefined) {
	i = 0;
}
flvPlayback.onUnload = function():Void  {
	while (handle_mc) {
		trace(handle_mc);
		var temp:MovieClip = handle_mc;
		temp._name = "handle"+(i++)+"_mc";
		temp.unloadMovie();
		// handle_mc.removeMovieClip();
	}
};

けれど、再度FLVPlaybackコンポーネントを配置したフレームに戻り、改めて上記スクリプトでhandle_mcを消すと、インスタンスの残骸が増えてしまいました。したがって、MovieClip.unloadMovie()メソッドで消すというのは、「正解」とはいえなそうです。

[デバッグ] > [オブジェクトのリストアップ]より引用:
ムービークリップ: フレーム=0 ターゲット="_level0.handle0_mc"
ムービークリップ: フレーム=0 ターゲット="_level0.handle1_mc"
ムービークリップ: フレーム=0 ターゲット="_level0.handle2_mc"
ムービークリップ: フレーム=0 ターゲット="_level0.handle3_mc"


----------------
 

永井勝則
Åê¹ÆNo.25500
投稿日時: 2006-5-10 21:17
職人
居住地: 白馬村
投稿: 796
使用環境:
Windows 7 :Flash CS4:
10.6.8 :Flash CS5.5
Re: シークバーとボリュームバーのハンドルが残ってしまう
確かにひとつしか消えません。

行き先のフレームで、2回removeMovieClip()を実行すると
消えるようです。

_level0.handle_mc.removeMovieClip();
_level0.handle_mc.removeMovieClip();


unloadMovie()を2回実行しても1個残ります。
_level0.handle_mc.unloadMovie();
_level0.handle_mc.unloadMovie();


----------------
永井勝則:
himco.jp :

(1) 2 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops