# keyboardEvent Listener not listening

**URL:** <https://forum.kirupa.com/t/keyboardevent-listener-not-listening/306775>\
**Category:** flash\
**Created:** [March 22, 2010, 10:58am UTC](https://forum.kirupa.com/t/keyboardevent-listener-not-listening/306775 "2010-03-22T10:58:42Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![iluvAS](https://avatars.discourse-cdn.com/v4/letter/i/e95f7d/32.png) [@iluvAS](https://forum.kirupa.com/u/iluvAS)\
**Post date:** [March 22, 2010, 10:58am UTC](https://forum.kirupa.com/t/keyboardevent-listener-not-listening/306775/1 "2010-03-22T10:58:42Z")

</div>

I made a document class and created an instance of a keyDetection class

```auto

//Document Class
package com
{
	import flash.display.MovieClip;
	import flash.events.Event;
	import com.kDet;
	public class DocumentClass extends MovieClip
	{
		private var _kDet:kDet;
		public function DocumentClass()
		{
			trace(" **Document Class Instantiated**");
			_kDet=new kDet();
			this.addEventListener(Event.ENTER_FRAME,codeLoop);
		}
		private function codeLoop(evt:Event):void{
			if(_kDet.upk){
				trace("up key is held");
			}
		}
	}
}

//kDet Class
package com
{
	import flash.display.MovieClip;
	import flash.events.KeyboardEvent;
	import flash.ui.Keyboard;
	public class kDet extends MovieClip
	{
		public var rightk:Boolean;
		public var leftk:Boolean
		public var upk:Boolean;
		public var downk:Boolean;
		
		public function kDet()
		{
			this.addEventListener(KeyboardEvent.KEY_DOWN,kd);
			this.addEventListener(KeyboardEvent.KEY_UP,ku);
			trace(" **Key Detection instantiated**");
		}
		public function kd(evt:KeyboardEvent):void{
			switch(evt.keyCode){
				case Keyboard.RIGHT:
					rightk=true;
					break;
				case Keyboard.LEFT:
					leftk=true;
					break;
				case Keyboard.UP:
					upk=true;
					break;
				case Keyboard.DOWN:
					downk=true;
					break;
			}
		}
		public function ku(evt:KeyboardEvent):void{
			switch(evt.keyCode){
				case Keyboard.RIGHT:
					rightk=false;
					break;
				case Keyboard.LEFT:
					leftk=false;
					break;
				case Keyboard.UP:
					upk=false;
					break;
				case Keyboard.DOWN:
					downk=false;
					break;
			}
		}
	}
}

```

when i pressed the up it didnt assign upk to true… i placed trace() all over the function testing it out and it seems that the function is not dispatched at all… whats the problem with the code?? =(
