Форум 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)
-   -   Правильное обращение к мувикам. (http://www.flasher.ru/forum/showthread.php?t=119078)

nOobCrafter 11.12.2008 16:58

Правильное обращение к мувикам.
 
Даже не знаю как это все корректно изложить. Делаю каталог, все данные беру из хмл, соответственно строю что то по аналогии меню. В роли кнупок - заголовки, при нажатии на заголовок происходит смещение всех заголовков что находятся ниже вниз, на величину высоты раздела (не в этом суть правда) Вот непонимаю вообще как обратиться к нижестоящим кнопкам?

Код AS1/AS2:

function Catalog_create_item_list():Void 
{
                var Catalog_list = Catalog.Catalog_item_list.duplicateMovieClip("Catalog_item_list"+j, j);
                Catalog_list._y = 0;
                Catalog_list.no = j;  // присваиваем св-ву значение переменной для дальнейшей работы с ней
                Catalog_list.Header_button._x = 0;
                Catalog_list.Header_button._y = 0;
                trace(j)
 
                Catalog_list.Header_button.onRelease = function () // при нажатии на эту кнопку должно происходить смещение, но как реализовать адресация непонимаю(((:wacko:
                        {
                        //trace(this)
                        //var tween_1:Tween = new Tween(this._parent, "_y", Strong.easeOut, this._parent._y, this._parent._y + 100, 1, true);     
                        //var tween_2:Tween = new Tween(this._parent, "_alpha", Strong.easeOut, 0, 100, 1, true);
// пр этих 2х действия реагирует только раздел к которому относится кнопка соответственно.
                }
                if (j>0) {  Catalog_list._y =offset_j;      }    // расчитывем расстояние до след раздела
                        else {        Catalog_list._y = j * offset_j;  }
 
                        offset_j = Catalog_list._y + Catalog_list.Catalog_header._height + item_spacing;
}

И при трейсе Catalog_list.no - получаем undefined((

Mnilionic 11.12.2008 17:02

а где сам цикл? или откуда у вас j берётся

nOobCrafter 11.12.2008 17:26

гхым.. соори забылся) он идет выше:
Код AS1/AS2:

xml.onLoad = function(success:Boolean) {     
if (success)
{
        Catalog.Catalog_item_list.Catalog_fm_item._visible = false;
        Catalog.Catalog_item_list._visible = false;
 
        var nodes_j = this.firstChild.childNodes;
        total_j = nodes_j.length;
 
        for( j = 0; j < total_j; j++)
        {
                Catalog_header[j] = nodes_j[j].attributes.razdel;
                Catalog_create_item_list();   
        }
}
}
xml.load( "Docs_Download.xml" );
xml.ignoreWhite = true;

То есть тут мы вызываем эту функцию, а потом описываем.

Mnilionic 11.12.2008 17:29

передавайте j как параметр

Код:

Catalog_create_item_list(j);

nOobCrafter 11.12.2008 17:42

Иии... А как мне к клипам то обращаться?

Mnilionic 11.12.2008 18:03

создать массив клипов. при клике по клипу, в цикле обращаться к клипам выше или ниже индекса выбранного.

nOobCrafter 11.12.2008 18:12

Нда..я сегодня наверно туплю в конец. %)...можешь показать пример или показать похожую тему?..
З.Ы. то етсь после создани ямассива клипов ты предлагаешь обращаться в ним по типу Catalog_list[j]?

Mnilionic 11.12.2008 23:37

например, да

nOobCrafter 15.12.2008 14:45

Можно небольшой пример в студию? Например как выглядит использование функции типа function(i) и обращение к обьектам внутри ее если не сложно? А то я себе что то плохо представляю как это выглядит...

Mnilionic 15.12.2008 19:21

Код AS1/AS2:

// массив с данными
var my_array = ['Angelina Jolie', 'Charlize Theron'];
 
 
function whois(i){
        // обращение к данным из массива по ключу
        trace('Today I love ' + my_array[i]);       
}
 
 
// запускаем функцию
whois(0);



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

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