• 締切済み

FlashのDragOverイベント

Flashのイベントについての質問です。 FlashMXを使用しています。 クリックされた状態(マウスダウン状態)のまま、 ムービークリップオブジェクトにカーソルを、 もってきたときにイベントを発生させる時、 皆さんはどうやっていますか? MXからムービークリップでも、 DragOverハンドラが使えるようになりましたが、 DragOverは、一度そのオブジェクトで マウスダウンさせてないと発生していません。 すでにマウスダウンされている状態で、 カーソルがオブジェクト範囲内に入ったときに、 イベントを発生させたいのです。 とっても困っています。よろしくお願いいたします。

みんなの回答

回答No.4

すいません、言い忘れてました。 マウスダウンも検知できるようにしておき、 マウスダウンを検知したら、フラグを下げます。 そうすれば、対象オブジェクトのonRollOverを検知しても、 フラグが下がっているから大丈夫ではないでしょうか? 勘違いでしたら、すいません。

hide_momiji
質問者

補足

ありがとうございます。 また補足回答がおくれまして、 申し訳ありません。 以下の手順で試しました。 1、対象オブジェクト以外でマウスダウンしたときに、   フラグをたてる。 2、対象オブジェクト以外でマウスアップしたときには、   フラグをおろす。 3、対象オブジェクトにonRollOverイベントをかいて、   処理を実行させました。 RollOverイベントはどうやらマウスアップ状態で、 発生するらしく、マウスダウン状態で対象オブジェクト領域に、 入ってもイベントは発生せず、マウスアップしたとき、 はじめてイベントが発生しました。 目的はマウスダウンさせた状態で対象オブジェクト領域に 入った段階でイベントを発生させたいので、 あ~だめか~、という感じです。

noname#107580
noname#107580
回答No.3

ボタンにムービークリップを挿入しましたら、そのボタンをシーンに挿入してそのボタンオブジェクトを選択した状態でDragOverハンドラを設定します。 hideさんのやろうとしていることを理解できていないのかも知れません・・。 例えばボタンにDragOverハンドラを指定するとボタン上でクリックしてから一度外に出してもう一度ボタン上に移動する必要がありますが、『ボタントラック』を『メニューアイテムトラック』に変更しますとクリックした状態でボタン上に移動した時にもイベントを検知出来るようになります。 こういう事でなければ私の勘違いです・・すみません。

回答No.2

僕もあまり自信は無いですが、 1.マウスダウンをイベントハンドラで検知 2.変数を使って、フラグを立てる 3.そのフラグが立っている状態でそのムービークリップのonRollOverを検知したら、イベントを実行 で、どうでしょうか? 分かりにくかったら、また質問してください。

hide_momiji
質問者

補足

ありがとうございます。 ご提案の方法でやってみました。 対象オブジェクトのクリップアクションの、 マウスダウンイベントでフラグをたて、 対象オブジェクトのクリップアクションの onRollOverイベントで処理の実行を行いました。 ただこれだと、対象オブジェクトの外側で マウスを一度離してしまうと、 対象オブジェクトにはRollOverがしこまれてあるので、 単なるRollOverで処理が発生してしまいます。 一筋ではいかないかも・・。

noname#107580
noname#107580
回答No.1

こんにちは! 実はあまり自信がありません・・が他の方の回答が無いようなのでダメ元でお試しください。 1.新規シンボルでボタンにしてアップにお作りになったムービークリップを挿入します。 2.そのボタンにアクションスクリプトを設定します。 3.ボタンを選択した状態で【プロパティインスペクタ】の『ボタントラック』となっているところを『メニューアイテムトラック』に変更します。 くれぐれも期待しないで下さいね~  (;^_^A

hide_momiji
質問者

補足

>そのボタンにアクションスクリプトを設定します。 ありがとうございます。 ボタンのどこに処理を仕込むのでしょうか?