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

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     グローバル変数とattachMovieを使った処理の振り分け
投稿するにはまず登録を

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
qintec
Åê¹ÆNo.6185
投稿日時: 2004-4-12 5:48
新米
居住地:
投稿: 3
使用環境:
OS:win2000
FLASH Ver:Mx
ブラウザ:IE6.0
返信ありがとうございました
何とかやりたい処理を実現させることが出来ました。
今まで本当に簡単なことしかやっていなかったので
基本のことなどがしっかり身についていないのを
痛感しました。
もう一度ActionScriptの基本的な事から
しっかり勉強し直します...
野中様ありがとうございました!
野中文雄
Åê¹ÆNo.6177
投稿日時: 2004-4-11 20:36
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: 出来ました!!が・・・
引用:
qintecさんは書きました:
on (release) { 
	_global.nextpage = 10;
	_mc = this.attachMovie("otfs", "S1", 1);    
		trace(_mc);
		_mc._x =370;
		_mc._y =166.3;
}

グローバル変数を使うことと、if/elseステートメントを使うこととは関係がないように思います。
引用:
それでなのですがグローバル変数を使用している理由は
if/elseを使用して振り分けするより処理が早いと聞いたからなのです。

ActionScriptは、基本的にMovieClipシンボルでなくインスタンスを制御対象とします。ご説明の際には、インスタンスとそのパスを特定してください。
引用:
"otfs"MCの最後のフレームで振り分けたいのですが

ステートメントを以下の1行のみにすると、グローバル変数値が"10"の場合に意図する動作になりますか? ならなければ、問題はグローバル変数でも条件判定(switchステートメント)でもありません。

なお、フレームラベルは「識別子」を用います。つまり先頭に数字を使うべきではありません。とくに"1"は、第1フレームと区別が難しくなります。
// switch(_global.nextpage){ 
	// case "10": gotoAndPlay("1");
	gotoAndPlay(1);
	// break;
	// default:;
	// }

"mtfs"ですか? リンケージ識別子"otfs"のMovieClipシンボルのインスタンスではないのですか?
引用:
"mtfs"MCが延々と繰り返されてしまいます。

変数について、もう1度理解を確認された方がよいように思います。
引用:
どこに問題があるのでしょうか?それとも大元のグローバル変数設定が
既に間違っているのでしょうか?


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

qintec
Åê¹ÆNo.6176
投稿日時: 2004-4-11 19:47
新米
居住地:
投稿: 3
使用環境:
OS:win2000
FLASH Ver:Mx
ブラウザ:IE6.0
出来ました!!が・・・
野中文雄様有難う御座いました。
↓の用に記述することでattachで呼び出せるようになりました。
on (release) {
_global.nextpage = 10;
_mc = this.attachMovie("otfs", "S1", 1);
trace(_mc);
_mc._x =370;
_mc._y =166.3;}

それでなのですがグローバル変数を使用している理由は
if/elseを使用して振り分けするより処理が早いと聞いたからなのです。
"otfs"MCの最後のフレームで振り分けたいのですが

switch(_global.nextpage){
case "10": gotoAndPlay("1");
break;
default:;
}

と記述したのですが(とりあえず動作するかの確認としてcase1だけです)
"mtfs"MCが延々と繰り返されてしまいます。
参考にした本には

switch(調べる項目【変数等】){
    case 値/調べる内容:条件満たした場合の処理、今回の場合は"1"のラベルに飛ばせたいわけです。;break;
    default:いずれにも満たない場合の処理;


のように書いてありました。先ほどのswitch記述の場合
どこに問題があるのでしょうか?それとも大元のグローバル変数設定が
既に間違っているのでしょうか?
もし宜しければ教えて頂けると嬉しいです...
野中文雄
Åê¹ÆNo.6171
投稿日時: 2004-4-11 10:17
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: グローバル変数とattachMovieを使った処理の振り分け
[題名]に「グローバル変数」とあるのは、グローバル変数を使わなければ動作するということですか? もしその確認までされていないということでしたら、グローバル変数の使用を一旦止め、問題の切分けをすべきでしょう。また、同様にリンケージ[識別子]やインスタンス名も変数を用いず、直接ストリングで指定してください。

#識別子を"ofts"と設定しながら、ダブルクォーテーションなしでoftsと指定
#している訳ではないですよね?
引用:
qintecさんは書きました:
attachMovieで呼び出しすら出来ないです...
ofts=リンケージでつけた識別子です
on (release) {
    // _global.nextpage = 1;
    // this.attachMovie(otfs,obj,nextpage);
    _mc = this.attachMovie("識別子", "インスタンス名", 1);
    trace(_mc);
        // _root[obj] ._x =370;
        // _root[obj] ._y =166.3;
        _mc._x =370;
        _mc._y =166.3;
}

ご使用の環境は、プロフィールに記入しましょう。
引用:
使用OS:Windows
FlashのVer:Mx
ブラウザ:IE6.0


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

qintec
Åê¹ÆNo.6170
投稿日時: 2004-4-11 5:18
新米
居住地:
投稿: 3
使用環境:
OS:win2000
FLASH Ver:Mx
ブラウザ:IE6.0
グローバル変数とattachMovieを使った処理の振り分け
attachMovieで呼び出しすら出来ないです...
ofts=リンケージでつけた識別子です

on (release) {
_global.nextpage = 1;

this.attachMovie(otfs,obj,nextpage);
_root[obj] ._x =370;
_root[obj] ._y =166.3;
}


>this.attachMovie(otfs,obj,nextpage);
の部分が明らかに間違ってると思われるのですが...
あまり慣れていないので
もし宜しければご教授願えませんでしょうか?
宜しくお願い致します

使用OS:Windows
FlashのVer:Mx
ブラウザ:IE6.0
です。宜しくお願いします。
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ

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