トップページ > Flash入門 > マウス・キーボード関係(1)
画面上のマウス座標を取得するには,画面(stage)のmouseXとmouseYプロパティを読むだけです。 this.stage.mouseX としてアクセスします。 ここでは,テキスト関係のところで使ったTextFieldにマウス座標を表示させるようにしてみます。
package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.text.*;
//画面サイズと背景色,フレームレートを設定
[SWF(width="300", height="300", frameRate = "60", backgroundColor="0xffffcc")]
public class Main extends Sprite
{
//================================================================
//マウス座標表示用TextField
private var tf:TextField = new TextField();
//マウスのx,y座標を記録する変数
private var x_temp:int = 0;
private var y_temp:int = 0;
//================================================================
//main関数
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
//コンストラクタ
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
// entry point
//ENTER_FRAMEをイベント登録
addEventListener(Event.ENTER_FRAME, onEnterFrame);
//TextFieldの寸法は自動調整
tf.autoSize = TextFieldAutoSize.LEFT;
//TextFieldを表示
addChild(tf);
}
//フレームごとによばれる関数
private function onEnterFrame(e:Event):void
{
//============================================================
//座標を取得
x_temp = this.stage.mouseX;
y_temp = this.stage.mouseY;
//座標を表示する(intを文字列にキャストする必要はなし)
tf.text = "x座標: " + x_temp + ", y座標: " + y_temp;
//============================================================
}
}
}