Actionscript 3.0: что делает параметр 'e' в e: KeyboardEvent - PullRequest
1 голос
/ 09 марта 2012

Я использовал параметр 'event' для моих KeyboardEvents и MouseEvents в недавнем проекте, над которым я работал (VERY BASIC).

Я не совсем уверен в том, что часть 'e'e: KeyboardEvent действительно делает это, и меня попросили выяснить, какую информацию может получить доступ к параметру 'e' при его использовании.

Извините, если вопросы написаны плохо, это была долгая ночь!

РЕДАКТИРОВАТЬ: Если метод принимает параметр (e: KeyboardEvent).какую информацию мы можем получить, используя параметр e?

Ответы [ 4 ]

1 голос
/ 20 июня 2012
import flash.events.KeyboardEvent;

stage.addEventListener(KeyboardEvent.KEY_DOWN, keyboardHandler);

function keyboardHandler(Jack:KeyboardEvent):void{

    trace(Jack.keyCode);///----------see output pannel

}

/////////////////--------or

stage.addEventListener(KeyboardEvent.KEY_DOWN, keyboardHandler2);

function keyboardHandler2(Banana:KeyboardEvent):void{

    trace(Banana.keyCode);////////----see output pannel

}

Вы можете ввести что угодно внутри (), включая KeyboardEvent

1 голос
/ 09 марта 2012

Я предполагаю, что у вас есть какая-то функция, подобная этой

function someFunction(e:KeyboardEvent):void
{
    // code
}

Вы можете получить доступ к любой информации из класса KeyboardEvent , точно так же, как если бы параметр назывался «событие». Имя параметра не влияет на то, к чему вы можете получить доступ через него; тип делает.

Edit: "e" - это просто имя переменной - его можно назвать fred, banana или tyrannosaurusRex, и это не будет иметь значения. То, что определяет, к какому типу информации вы можете получить доступ через переменную, это ее тип - в данном случае KeyboardEvent. Если вы перейдете по ссылке KeyboardEvent выше, вы увидите документацию для класса KeyboardEvent, которая расскажет вам все, что вы можете с ним сделать. Например, одним из свойств KeyboardEvent является keyCode, который сообщает вам, какая клавиша была нажата:

if (e.keyCode == 32)
{
    // 32 is the keyCode for spacebar, so spacebar was pressed
}
1 голос
/ 09 марта 2012

e представляет экземпляр KeyboardEvent (экземпляр, передаваемый вашей функции прослушивания).

Наиболее важным свойством KeyboardEvent (на которое ссылается e в вашем примере) является keyCode.

Определяет, какая клавиша нажимается / отпускается.

Например:

stage.addEventListener(KeyboardEvent.KEY_DOWN, _keyDown);
function _keyDown(e:KeyboardEvent):void
{
    trace(e.keyCode); // Will be 65 if you press 'a'.
}
0 голосов
/ 09 марта 2012

Вы называете событие, которое запускает функцию, так же, как и любой другой var, его можно назвать как угодно. Затем, в зависимости от типа события, у вас будет доступ к нескольким переменным и функциям, связанным с тем, что вызвало событие.

Редактировать: Вот что доступно вам с MouseEvent (Public Properties)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...