« デザイナーのためのActionScript講座 ― 第8回:MovieClipと階層構造 | メイン | Matrix の値から拡大縮小、回転の値を取る »
2007年12月27日
[as3] KeyboardEvent
あんまり取り沙汰されてない気がするけども、AS3になって複数キーのイベントがきちんと取れるようになったのはすばらしい事だと思う。
import flash.events.KeyboardEvent;
import flash.display.Sprite;
var sprite:Sprite = new Sprite();
this.addChild( sprite );
var pressPattern:Array = new Array(300);
function keyDownHandler( event:KeyboardEvent ):void
{
if( !pressPattern[event.keyCode] ){
trace("DOWN : " + event.keyCode);
pressPattern[event.keyCode] = true;
}
}
function keyUpHandler( event:KeyboardEvent ):void
{
if( pressPattern[event.keyCode] ){
trace("UP : " + event.keyCode);
pressPattern[event.keyCode] = false;
}
}
sprite.addEventListener( KeyboardEvent.KEY_DOWN , keyDownHandler );
sprite.addEventListener( KeyboardEvent.KEY_UP , keyUpHandler );
this.stage.focus = sprite;
出力例
DOWN : 97 DOWN : 98 DOWN : 99 UP : 98 UP : 99 UP : 97ちなみにAS2だとこうなる。
DOWN : 97 DOWN : 98 DOWN : 99 UP : 99
トラックバック(0)
このブログ記事を参照しているブログ一覧: KeyboardEvent
このブログ記事に対するトラックバックURL: http://system.seyself.com/mt-tb.cgi/468

コメントする