Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Как вывести переменную из обработчика события? (http://www.flasher.ru/forum/showthread.php?t=201147)

Chelovek 12.06.2013 12:53

Как вывести переменную из обработчика события?
 
Здравствуйте:
Код AS3:

var ATP:Array = new Array();
 
a1.addEventListener(MouseEvent.CLICK, clickHandler);
 
function clickHandler(evt:Event):void
{                               
        ATP[0]  = "Password";
        ATP[1] = "Text";
        trace(ATP[1]);
}
trace(ATP[1]);

Функция trace в обработчике говорит "Text".
А функция trace вне обработчика говорит "undefined".

gloomyBrain 12.06.2013 13:03

Обработчик срабатывает когда вы кликаете на a1. И уже в самом обработчике вы задаете значения ATP[0] и ATP[1]. То есть до того как произойдет клик никаких значений еще не задано. Второй trace выполняется при старте программы, независимо от того был клик или нет. Иначе говоря trace вне функции clickHandler выполняется ДО клика, trace внутри функции clickHandler - после клика.

Chelovek 12.06.2013 13:10

gloomyBrain, большое спасибо за объяснение.


Часовой пояс GMT +4, время: 00:28.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.