メイン コーダーズルーム【スクリプト系】 関数をメインタイムライン上に集結させたいの | 投稿するにはまず登録を |
スレッド表示 | 古いものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
加藤達雄 | Åê¹ÆNo.3461 投稿日時: 2004-2-2 16:59 |
新米 居住地: 東京 投稿: 24
使用環境:
Win XP Pro MX Pro 2004 |
Re: 関数をメインタイムライン上に集結させたいの 引用:
そういうことになります。 その「実行する人」に参照を与えても与えなくても、仕事はしてくれるというわけです。そして、execute()実行後、つまりそれにまつわる処理すべてが終ったとき、消えてくれます。 |
kombinat | Åê¹ÆNo.3459 投稿日時: 2004-2-2 16:55 |
新米 居住地: 目黒区 投稿: 13
使用環境:
on 10.3 |
Re: 関数をメインタイムライン上に集結させたいの と言う事は、
のイメージは、「オブジェクトインスタンスのメソッド(を実行する人)を生成」と言う感じになるのでしょうか? 従って、メソッドが有効でなくなると自動的に消去される、というイメージ。 引用: Fade.executeメソッドは、オブジェクトインスタンスへの参照であるthisをローカル変数oに代入し、oはMovieClipインスタンスに設定されたMovieClip.onEnterFrameイベントハンドラメソッドのコールバック関数内で使用されています。 頭の中のイメージがかなりクリアになった気がします。 |
野中文雄 | Åê¹ÆNo.3455 投稿日時: 2004-2-2 16:12 |
ちょんまげら 居住地: 東京 投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1) |
Re: 関数をメインタイムライン上に集結させたいの new演算子で生成したオブジェクトインスタンスは、その参照を(通常変数またはプロパティとして)保持しないかぎり消滅します。しかし、以下のステートメントでは、FadeInオブジェクトに対して、(スーパークラスの)メソッドexecuteを呼出しています。
引用: 「どこかに生まれた FadeIn オブジェクトの行方」です。 Fade.executeメソッドは、オブジェクトインスタンスへの参照であるthisをローカル変数oに代入し、oはMovieClipインスタンスに設定されたMovieClip.onEnterFrameイベントハンドラメソッドのコールバック関数内で使用されています。 したがって、オブジェクトインスタンスは、Activationオブジェクトにプロパティoのかたちで設定され、コールバック関数内から参照が保持されている間は破棄されません。そのため、MovieClip.onEnterFrameメソッドがdeleteされるまでは存続することになります。
|
加藤達雄 | Åê¹ÆNo.3452 投稿日時: 2004-2-2 15:54 |
新米 居住地: 東京 投稿: 24
使用環境:
Win XP Pro MX Pro 2004 |
Re: 関数をメインタイムライン上に集結させたいの 引用:
kombinatさんは書きました: はい、その通りです。やってることは単純ですよね。 引用:
そのFadeInオブジェクトは、execute()実行後、消えてなくなります。 fi = new FadeIn(my_mc, 3); fi.execute(); delete fi; を一行で書くなら、上の書き方になります。どちらでも全く問題ないと思います。 |
kombinat | Åê¹ÆNo.3449 投稿日時: 2004-2-2 15:16 |
新米 居住地: 目黒区 投稿: 13
使用環境:
on 10.3 |
Re: 関数をメインタイムライン上に集結させたいの Katoさんのスクリプトをじっくり眺めて、何となくオブジェクト指向でプログラミングするときの考え方が、ぼやーっと解ってきたような気がします。
ここで、もう少しクリアにするために質問しても良いでしょうか。 以前、参考にいただいたスクリプトについてです。
という感じなのですが、変な解釈をしていないでしょうか? あと、上記の解釈で間違っていないとした場合に気になる部分が有ります。 「どこかに生まれた FadeIn オブジェクトの行方」です。 FadeInオブジェクトはどこかに存在したままになっているのでしょうか?
で、生まれたオブジェクトの行方が気になってます。 もしかしたら、すごくトンチンカンなことを言っているのかもしれないのですが、よろしくお願いします。 |
加藤達雄 | Åê¹ÆNo.3446 投稿日時: 2004-2-2 14:37 |
新米 居住地: 東京 投稿: 24
使用環境:
Win XP Pro MX Pro 2004 |
Re: 関数をメインタイムライン上に集結させたいの 引用:
youichさんは書きました: はい、ちょっとだけ見栄はりました。数回テストして一番速いのを書きました。(笑) でも値の範囲はどちらも3?4msほどでしたよ。 |
youich | Åê¹ÆNo.3428 投稿日時: 2004-2-2 3:30 |
職人 居住地: kobe 投稿: 349
使用環境:
Tiger |
Re: 関数をメインタイムライン上に集結させたいの 引用:
そ、それは、katoさんが面白くさせてますねんやん。
てっきりバイオのキーボードがおなくなりになったのかと、 ふ?む?、しかしkatoさんのPC速いですね、、ぼくのMacより3倍ぐらい速い。。。 もしかして、さばよんだりしてません
|
加藤達雄 | Åê¹ÆNo.3372 投稿日時: 2004-1-31 19:53 |
新米 居住地: 東京 投稿: 24
使用環境:
Win XP Pro MX Pro 2004 |
Re: 関数をメインタイムライン上に集結させたいの youichさん、了解です。これは面白いテストですね。
とちょっと極端な例で試してみたんですが、確かにf2()でのみ、ループ内でレジスタが使われているようです。 外側の関数のローカル変数が内側の関数で参照されたが最後、もうそれはレジスタでは扱われなくなるということですね。 |
youich | Åê¹ÆNo.3370 投稿日時: 2004-1-31 19:15 |
職人 居住地: kobe 投稿: 349
使用環境:
Tiger |
Re: 関数をメインタイムライン上に集結させたいの 引用:
すいません、説明が不十分ですた。 fは普通にレジスタを使ってOK f1がレジスタを使えないでX f2はループの所はレジスタが使えてOK というようなのことでした?
|
加藤達雄 | Åê¹ÆNo.3368 投稿日時: 2004-1-31 16:59 |
新米 居住地: 東京 投稿: 24
使用環境:
Win XP Pro MX Pro 2004 |
Re: 関数をメインタイムライン上に集結させたいの 引用:
youichさんが会長さんですか?入会希望(^^) 特にActivation Object云々を気にしなくても、とりあえず、 「ネストされた関数がある場合、内側の関数内で外側の関数のローカル変数を参照できる」というのは便利な仕様なので使わない手はないと思うんですよね。ちなみに最新(?)OOP言語,C#の次期バージョンでもその仕様が取り入れられるそうです。 引用: activationObjectを使う場合これを、レジスターで処理してくれません。。。。 あ、そうなんですか。ただ、Activation Objectを使わずに行う場合は、何らかのオブジェクトにプロパティとしてある値を置いておくことになり、当然レジスターでの処理ではなくなるわけですから、それと同じことですよね? その件に関しては、イーブンじゃないでしょうか(^^; |
(1) 2 3 » |
スレッド表示 | 古いものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |