Показать сообщение отдельно
Старый 16.01.2010, 17:02
dixlofos вне форума Посмотреть профиль Отправить личное сообщение для dixlofos Найти все сообщения от dixlofos
  № 1  
Ответить с цитированием
dixlofos
 
Аватар для dixlofos

Регистрация: Apr 2009
Сообщений: 167
Записей в блоге: 1
По умолчанию Не срабатывает addEventListener

всем хеллоу!

Есть у меня класс Craft :
Код AS3:
package classes
{
 
	import flash.display.MovieClip;
	import flash.events.*;
	import classes.assisted.keyPressed;
 
	public class Craft extends MovieClip
	{
		var kp = new keyPressed();
 
		public function Craft():void
		{
			trace("class craft called");	
			addEventListener(Event.ENTER_FRAME, ef);						
		}
 
		public function ef(e:Event)
		{			
		    kp.keyP(this);		
		}
	}
}
и есть у меня другой класс keyPressed

Код AS3:
package classes.assisted
{
	import flash.events.*;
 
	public class keyPressed
	{		
		public function keyPressed():void
		{
			trace("class keyPressed called");				
		}
 
		public function keyP(obj):void
		{
			obj.addEventListener(KeyboardEvent.KEY_DOWN, kd);	
			obj.y-=1;
		}
 
		public function kd(event:KeyboardEvent)
		{
			trace("^_^");
			//trace(event.keyCode);
		}
	}
}
и после компиляции компилятор пишет "class keyPressed called", а как бы я по клавишам не стучал, то "^_^" некак не хочет написаться, хотя объект я явно передал классу, тк он медленно но верно ползет вверх
Почему такая несправедливость в мире?
Неужто мне прийдеться передовать не только сам объект, но и коды нажатых клавишь?