- 締切済み
動作完了までボタンの入力を無効にする方法を教えて頂きたいです(FLASH)
ボタンをクリックした時に現在の場所から一定距離移動するようなアクションスクリプトを組みました。指示としては、クリックした時に現在のインスタンスの座標を読み込んでそこから一定距離移動するような内容になっています。 しかし、移動が完了する前に再度ボタンを押してしまうとその瞬間にインスタンスの座標を読み込んでしまいます。デザインの都合上、移動中の座標を読み込んでしまうと、元の位置に戻れなくなってしまうので移動中はボタンクリックのアクションを無効にしたいのですが、誰かやり方を知っている方はいらっしゃいますでしょうか?よろしくお願い致します。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- BlurFiltan
- ベストアンサー率91% (1611/1754)
Flash のバージョンを書かれていらっしゃいませんが, Flash MX 以上(MX,MX2004,8,CS3,CS4)をお持ちで, ActionScript2.0以下 でしたら, ボタンもしくはムービークリップの enabled プロパティを false にすればボタン機能は無効になります。 ボタンのインスタンス名.enabled = false; true にするとボタン機能が復活します。 ムービークリップの場合は, on(release){ this.enabled = false; } のように this で自分自身を参照すれば そのボタン(ムービークリップのボタン)をクリックしたとたん自分自身のボタン機能を無効にできますが, ボタン(ボタンインスタンスのボタン)の場合は階層を持たないので自分自身に対して this が使えません。 ですから, 自分自身の enabled を false にしたい場合でも,インスタンス名が必要になります。 Google検索「enabled Flash ボタン」 http://www.google.co.jp/search?hl=ja&q=enabled+Flash+%E3%83%9C%E3%82%BF%E3%83%B3&lr=
補足
回答ありがとうございました。 FLASHのバージョンはCS3でactionscript2.0を使用しています。 質問の補足をさせて頂きます。 制作しているHPは横長のデザインのものになり 右に移動するボタンを押すと右に進み(現在の場所より右に1024px移動)、左を押すと左に進む(現在の場所より左に1024px移動)ようなものになります。 そのため、ボタンは複数回押すことになります。 よって達成したいものは、「移動中はボタンが無効」「移動後はボタンが有効」という風に指示を書きたいのですが、「移動中」というのが上手く表現できません。 お忙しい中恐れ入りますが、その辺もご存知でしたら、教えて頂けないでしょうか? 何卒よろしくお願い致します。