Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Не могу обратиться к e.target свойству (http://www.flasher.ru/forum/showthread.php?t=204028)

grafillo! 16.10.2013 13:26

Не могу обратиться к e.target свойству
 
Не могу обратиться через e.target к свойству lentaTxt пишет ошибку:TypeError: Error #1010: Термин не определен и не имеет свойств. at foto_fla::MainTimeline/lentaOver()
Пипец не могу понять как это не имеет свойств если это экземпляр из библиотеки.

Код AS3:

function addLentaAtribute (foto:MovieClip){ // функция добавляет атрибуты к фотографиям
                        foto.login = lentaFoto[_switch].@login;
                        foto.msg = lentaFoto[_switch];
                        //trace(lentaFoto[_switch]+" сообщение");
                        foto.buttonMode = true;
                        foto.mouseChildren = false;
 
 
                        var lentaTxt:lentaText = new lentaText;
                        lentaTxt.Txt.text = foto.msg;
                        lentaTxt.width = 300;
                        lentaTxt.y = 100;
                        foto.addChild(lentaTxt);
 
                        foto.addEventListener(MouseEvent.CLICK, openDialogWindow);
                        foto.addEventListener(MouseEvent.MOUSE_OVER, lentaOver);
                        foto.addEventListener(MouseEvent.MOUSE_OUT, lentaOut);
                        }       
function lentaOver (e:MouseEvent){
        e.target.y -=5;
        e.target.x -=5;
        e.target.width += 10;
        e.target.scaleY =  e.target.scaleX;
        e.target.parent.addChildAt(e.target,e.target.parent.numChildren);// добавляет выделенную фотку наверх всех
        //e.target.lentaTxt.x = 100;
        trace ("skolko detei "+ e.target.getChildAt(1));
        e.target.lentaTxt.x= 200;
}


AlexCooper 16.10.2013 13:39

Код AS3:

function lentaOver (e:MouseEvent){
        e.target.y -=5;
        e.target.x -=5;
        e.target.width += 10;
        e.target.scaleY =  e.target.scaleX;
        e.target.parent.addChildAt(e.target,e.target.parent.numChildren);// добавляет выделенную фотку наверх всех
        e.currentTarget.lentaTxt.x = 100;
        trace ("skolko detei "+ e.target.getChildAt(1));
        e.currentTarget.lentaTxt.x= 200;
}


grafillo! 16.10.2013 13:54

неа, не работает(((

AlexCooper 16.10.2013 14:08

Код AS3:

var lentaTxt:lentaText = new lentaText;
lentaTxt.name = 'lentaTxt';
 
 
function lentaOver (e:MouseEvent){
        e.target.y -=5;
        e.target.x -=5;
        e.target.width += 10;
        e.target.scaleY =  e.target.scaleX;
        e.target.parent.addChildAt(e.target,e.target.parent.numChildren);// добавляет выделенную фотку наверх всех
 
        var lenta:lentaText =  foto.getChildByName('lentaTxt') as lentaText;
        lenta.x = 100;
}


grafillo! 16.10.2013 14:19

вот такое пишет TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
at foto_fla::MainTimeline/lentaOver()

Добавлено через 18 минут
я понял в муви клип добавлены foto и lentaTxt, фото и лента тхт находятся какбы на одном уровне, события мыши отлавливает фото то есть нужно обратиться к элементу который добавлен в тот же мувиклип


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

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