Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Проблема с использованием constructor + addEventListener (http://www.flasher.ru/forum/showthread.php?t=134051)

_moscow 19.12.2009 23:36

Проблема с использованием constructor + addEventListener
 
Всем привет !

вот к примеру делаю так

Код AS3:

 
var SKY:Array = new Array();
for(var i=0;i<=50;i++)
{
 
    SKY.push(new Mc());
    SKY[SKY.length-1].constructor.type = "name"+i+"";
    SKY[SKY.length-1].addEventListener(MouseEvent.MOUSE_DOWN, Down);
    this.addChild(SKY[SKY.length-1]);
 
}
 
function Down(event):void
{
 
    trace(event.currentTarget.constructor.type);
    // вот тут и проблема  - он выводит не взависимости какой обьект был нажат всегда
    //  "name50"  -  получается он выводит всегда последний элемент массива SKY
 
    //  Почему так ? И как это лечится ?
 
}


etc 19.12.2009 23:59

contructor ссылается на класс. Класс у всех одинаковый. Результат очевиден.

TanaTiX 20.12.2009 00:36

В приведенном коде все объекты имеют один размер и координаты? Если да, то очевидно, что самый верхний будет последним и его событие и будет обрабатываться, что и происходит.

kackbip 20.12.2009 07:03

Не понятно зачем автор использует contructor.

dimarik 21.12.2009 02:48

Цитата:

constructor свойство

public var constructor:Object

Версии среды выполнения: 1.0 9


Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. Если объект представляет собой экземпляр класса, в свойстве constructor содержится ссылка на объект класса. Если объект создается с помощью функции конструктора, свойство constructor содержит ссылку на эту функцию конструктора. Функцию конструктора не следует путать с методом конструктора для класса. Функция конструктора — это объект Function, используемый для создания объектов и применяемый при определении классов наряду с ключевым словом class.
kackbip , непонятно пишется слитно =)

kackbip 21.12.2009 06:53

Да, я в курсе. Хз чегой-то я так написал.


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

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