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

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   迷える子羊の部屋【初心者専用】
     MCの存在を調べる
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
cancan
Åê¹ÆNo.45382
投稿日時: 2010-7-28 21:10
新米
居住地: 埼玉
投稿: 21
使用環境:
AS2.0:WindowsXP、Flash8
AS3.0:Win7、CS5.5
MCの存在を調べる
例えばabc_mcというMCがStage上に既に存在していなかったらcreateEmptyMovieClipでabc_mcを作る、としたいのですが、どうしたら存在が調べられますか?
AS3.0で出来るというのは聞いたことがあるのですが、as2.0で出来る方法が知りたいです。


----------------
cancan@さいたま

vader
Åê¹ÆNo.45383
投稿日時: 2010-7-28 23:06
常連
居住地: 東京
投稿: 76
使用環境:
MacOS10.8,FlashCS6
Re: MCの存在を調べる
cancanさん、こんにちわ。


if (abc_mc) {
	trace([abc_mc,"存在します。"]);
} else {
	this.createEmptyMovieClip("abc_mc", this.getNextHighestDepth());
	trace([abc_mc,"作成しました。"]);
}


ではダメですか?

以上、頑張って下さい。
ひろゆき
Åê¹ÆNo.45384
投稿日時: 2010-7-28 23:08
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: MCの存在を調べる
_root 上に、ムービークリップ(インスタンス名: abc_mc) が存在するとして、
_root 第1フレームに
if (abc_mc) {
	trace("abc_mcは存在しています");	
} else {
	trace("abc_mcは存在していません");	
}
と記述。

次に、abc_mcを削除して、出力結果を確認してください。


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

cancan
Åê¹ÆNo.45385
投稿日時: 2010-7-28 23:59
新米
居住地: 埼玉
投稿: 21
使用環境:
AS2.0:WindowsXP、Flash8
AS3.0:Win7、CS5.5
Re: MCの存在を調べる
vaderさん
試したらできました。
ありがとうございました。

このif (abc_mc) は何を確認しているんでしょうか。
if (abc_mc==true) {
とは違うみたいですね。
これは略しているのではなく、if (abc_mc) と書かなくてはいけない、ということですか?
もし知っていたら教えてください。


----------------
cancan@さいたま

cancan
Åê¹ÆNo.45386
投稿日時: 2010-7-29 0:02
新米
居住地: 埼玉
投稿: 21
使用環境:
AS2.0:WindowsXP、Flash8
AS3.0:Win7、CS5.5
Re: MCの存在を調べる
ひろゆきさん
ありがとうございました。
試したらできました。
ほぼ同時に回答してもらったvaderさんの返信に書いたのですが、同じことお聞きしてもいいでしょうか。
よろしくお願いいたします。


----------------
cancan@さいたま

ひろゆき
Åê¹ÆNo.45387
投稿日時: 2010-7-29 0:49
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: MCの存在を調べる
F-site | 論理式
F-site | if (condition=1)
N0604004 - データのブール(論理)値評価 - Flash : テクニカルノート
などが参考になるでしょうか。


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

cancan
Åê¹ÆNo.45390
投稿日時: 2010-7-29 11:28
新米
居住地: 埼玉
投稿: 21
使用環境:
AS2.0:WindowsXP、Flash8
AS3.0:Win7、CS5.5
Re: MCの存在を調べる
ひろゆきさん
ありがとうございました。
読ませていただきました。
今後の参考にします。

なお、ちょっと疑問に思ったことがあったのですが、いいでしょうか。
次の2つの記述では結果が変わりました。上は「存在しています」となりますが、下は「存在していません」でした。
確認するときは上の書き方でないといけない、とういことですか?
(同じ意味だと思ったのですが…違うんですか?)

引用:
this.createEmptyMovieClip("a_mc", this.getNextHighestDepth())
if (a_mc) {
trace("存在しています");
} else {
trace("存在していません");
};

引用:
this.createEmptyMovieClip("a_mc", this.getNextHighestDepth())
if (a_mc == true) {
trace("存在しています");
} else {
trace("存在していません");
};


----------------
cancan@さいたま

ひろゆき
Åê¹ÆNo.45391
投稿日時: 2010-7-29 12:10
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: MCの存在を調べる
1. if (a_mc == true) で判定するのは間違いです。

2. a_mcが存在していない状態で、
 trace(a_mc) で、どのような出力がされるのか確認してください。

if (a_mc == undefined) {
	trace("a_mcは存在していません");
} else {
	trace("a_mcは存在しています");
}
でもいいはずです。


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

cancan
Åê¹ÆNo.45397
投稿日時: 2010-7-29 15:01
新米
居住地: 埼玉
投稿: 21
使用環境:
AS2.0:WindowsXP、Flash8
AS3.0:Win7、CS5.5
Re: MCの存在を調べる
ひろゆきさん
返信ありがとうございます。
もう少しお付き合いいただいていいでしょうか。ほんとすみません。

>a_mcが存在していない状態で、trace(a_mc)
やってみました。
undefined
となりました。
存在している状態で同じことすると
_level0.a_mc
となりました。

これはa_mcの何が出力されているんでしょうか。名前…じゃないですよね。

> if (a_mc == true) で判定するのは間違いです。
なぜ間違いか…は聞いてもいいでしょうか。

例えば、abcという変数にtrueかfalseか入ってるとしたら、
if(abc)もif(abc==true)も同じでいいんですよね?
教えていただいたサイトに、「表001■データのブール(論理)値評価」というのがあって、オブジェクトはtrueと書いてありました。
そしたらMc==trueでできないのかな?と思ったもので…

とても基本的な知識が抜けているor勘違いがあるんだと思います。
自分のモヤモヤばかり書いてしまってすみません。
さらに何かヒントが貰えるとうれしいです。
よろしくお願いします。


----------------
cancan@さいたま

ひろゆき
Åê¹ÆNo.45398
投稿日時: 2010-7-29 15:14
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: MCの存在を調べる
引用:
cancanさんは書きました:
これはa_mcの何が出力されているんでしょうか。名前…じゃないですよね。

ムービークリップ・インスタンスのパス(_rootからの参照)
ですね。

例えば、abcという変数にtrueかfalseか入ってるとしたら、
if(abc)もif(abc==true)も同じでいいんですよね?

abcがオブジェクトだとして、
オブジェクトが存在していれば、true「として」評価されるのであって、
true「ではない」でしょう?

オブジェクトが存在していれば、trueとして評価され、
存在していなければ、false(undefined)として評価される。
だから、if (a_mc) で判定ができる。


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

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

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