Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Вызов функции класса в Event (http://www.flasher.ru/forum/showthread.php?t=161362)

micoloss 23.07.2011 14:37

Вызов функции класса в Event
 
Добрый день! Подскажите пожалуйста как реализовать подобный функционал?
Код AS3:

var a:classA = new classA();
a.setPar(1);
a.addEventListener(MouseEvent.CLICK,load);
 
...
 
function load(e:Event):void {
var a:int = e.target.getPar();
}

Спасибо!

КорДум 23.07.2011 14:43

Код AS3:

(e.target as classA).getPar()


micoloss 23.07.2011 14:55

хм.. странно
когда делаю так (e.target as classA).getPar() и так (e.target as classA).setPar(1) вылезает ошибка:
Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".

classA наследуется от MovieClip - может в этом дело?

КорДум 23.07.2011 14:56

classA же имеет публичный метод setPar()?

micoloss 23.07.2011 15:09

да публичный

Wolsh 23.07.2011 15:09

КорДум, объект null.
Неизвестно в данном случае, кто там записан в таргет; надо использовать currentTarget.
Кроме того, хорошо бы принимать в load не Event, a MouseEvent.

КорДум 23.07.2011 15:10

Может и метод ведь, если объект не null. А так да, нужно еще и currentTarget смотреть.

Wolsh 23.07.2011 15:17

Таргет может содержать ссылку на любой вложенный клип, по которому пришелся клик мыши. При попытке кастинга его к классу classA получаем null, о чем и говорит Error.

micoloss 23.07.2011 15:21

Спасибо всем! currentTarget помог!


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

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