A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
ボタンやムービークリップでのイベント発生時の処理は、Flash MX からは on や onClipEvent のほかに on*** = function という書き方が用意され、フレームにも設定できるようになりました。
ムービークリップの場合はあまり問題がないのですが、ボタンの場合は、this の指す対象が on アクションと on*** = function の中とでは違いますので、注意が必要です。
ボタンはタイムラインを持っていないため、ActionScript では1つの階層とは見なされません。
on アクションの中で this を使うと、ボタンが存在している階層、つまり親の階層を指します。
例えばステージに存在するボタンに、
on(press)
{
trace( this );
}
(↑各行頭に全角のスペースが入っています。コピーする際はご注意ください)
を設定し、ボタンをクリックしてみると、”_level0”(通常は _root のことです)と表示されます。
ところが、ボタンに名前を付け、メインのタイムラインのフレームに
this.pb1.onPress = function()
{
trace( this );
};
このように設定してボタンをクリックすると、_level0 ではなく”_level0.pb1”と表示され、ムービークリップと同様に、あたかも1つの階層であるかのように扱われていることが分かります。
つまり、ボタンに対して on*** = function の書き方で指示を出した場合、その中の this はボタン自身を指しているので、this.pb1 では、ボタンの中にある pb1 という対象を指すことになります。
従って、this を使って enabled プロパティを切り替えるスクリプトは
this.pb1.onPress = function()
{
trace( "test" );
this.enabled = false;
};
となります。
しかし、on アクションを使ってボタンに直接設定する時は、this は親のタイムラインを指しますから、
on(press)
{
trace( "test" );
this.pb1.enabled = false;
}
このように、pb1 までのターゲットパスが必要になります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【お題】絵本のタイトル
- ・【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ボタン自身の画像を変える方法
-
FLASHナビボタンで、アクション...
-
メニューボタンを押されたまま...
-
別のアプリケーションのテキス...
-
【VB.NET】別Formのボタンが押...
-
photoshopで書いた四角の枠の中...
-
VB6.0 でメニューを作りたいん...
-
テキストボックスにセルの値を...
-
sendAndLoadで
-
VB6.0のHideのバグ?
-
C言語でのマウスを移動とマウス...
-
SO-01B(2.3.3)のroot化について
-
マスクをとるとオーバーフロー...
-
テキストボックスの中身をリセ...
-
duplicateMovieClip
-
こういうことをしたいのですが...
-
python ボタンを押すと複数の関...
-
VBScriptでMsgBoxのYesNoボック...
-
MovableTypeの導入について
-
マウス自体の移動量の取得
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
flash lite1.1 ボタンについて
-
onClipEvent(load)かhitareaの...
-
×ボタンを無効化したいのですが...
-
深度を最前面にしたいが?
-
ボタンの上にカーソルを置いた...
-
マウスオーバーでの外部swf読み...
-
ボタンをクリックして画面遷移...
-
スクリプト外部ムービーの制御
-
メニューボタンを押されたまま...
-
ボタンアクション flash アク...
-
ダブルクリックを無効にするには
-
Flash8でサウンドが鳴りません
-
FLASHで印刷ができません
-
マウスポインタを変化させない方法
-
VB 基本的なプログラム √ ...
-
記述の無いアクションが動く??
-
ボタンインスタンスにスクリプ...
-
(1)PSP2000にCFW 5.50GEN-D3を...
-
こういう事をしたいのですが
-
2つのムービークリップをスク...
おすすめ情報