Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   eval и прямой доступ к свойству обьекта. Проблема (http://www.flasher.ru/forum/showthread.php?t=113096)

Charly84 18.06.2008 17:17

eval и прямой доступ к свойству обьекта. Проблема
 
Собственно создал код. Хочу его сделать универсальным.
В функцию передается строковая переменная. Из нее выделяю число. Соотвественно хочу получить свойство нужного мне обьекта (обьекты отличаются только числовым индексом в названии)

Код:

function fill_hc (button:String) {
        button_n = Number(button.slice(8));
        myValue = eval("_root.hc_fill"+button_n+".getRGB().toString()");
        trace (myValue);
        fill_helicopter (myValue);
               
};

Но при трейсе trace (myValue); переменная myValue=undefined.
Причем, если просто написать

Код:

myValue = _root.hc_fill1.getRGB().toString();
тоесть, напрямую задать имя обьекта - то без проблем получаю его свойство.

В чем может быть проблемка?
Всем заранее спасибо за помощь

wvxvw 18.06.2008 17:30

какой-то, мягко говоря, очень извращенный способ...
Вариант #1: Забыть про _root и eval и не использовать их больше никогда. Сложить все объекты в массив и выбирать по индексу.
Вариант #2:
Код:

myValue = _root["hc_fill"+button_n].getRGB().toString();

Charly84 18.06.2008 17:30

решил проблему.
Написал просто
Код:

myValue = _root["hc_fill"+button_n].getRGB().toString();


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

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