Форум 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=67041)

Futs 22.07.2005 19:28

опять массивы
 
есть массив из объектов, хочу отсортировать его по _х объектов. лучше всего добавлять в массив свойство каждому элементу и по свойству сортировать, но я чего-то те пойму как добавить это свойство.

KidsKilla 22.07.2005 19:30

Array.sortOn("_x");

Futs 22.07.2005 19:40

я тоже так думал, не выходит

Whatsername 22.07.2005 19:47

Цитата:

Сообщение от Futs
но я чего-то те пойму как добавить это свойство.

Не совсем понятно, чем тебе помочь. Это свойство добавляется, равно как и все остальные, в констукторе. Заведи метод класса, подстчитывающий количество созданных объектов, и записывай это число в свойство каждого объекта.

Futs 22.07.2005 19:51

спасибо, но чего понять не могу так это классов, к сожалению, а очень хочется...

Whatsername 22.07.2005 19:54

>> есть массив из объектов
а о каких объектах речь?

Futs 22.07.2005 20:03

Обычные мувики
Код:

var depth = 0;
mc_arr = [];
this.onMouseDown = function() {
    if (depth<5) {
        var m_mc = this.attachMovie("muv_mc", "muv_mc_"+depth, depth++);
        m_mc.depth_tf.text = "depth "+depth;
        m_mc.name_tf.text = m_mc._name;
        m_mc._x = _xmouse;
        m_mc._y = _ymouse;
        mc_arr.push(m_mc);
        for (i=0; i<mc_arr.length; i++) {
        mc_arr[i].onPress = function() {
            this.startDrag();
        };
        mc_arr[i].onRelease = function() {
            this.stopDrag();
        };
      }
    }
};
this.fn_btn.onPress = function() {
        mc_arr.sortOn("_x");
        trace(mc_arr);
};


Whatsername 22.07.2005 20:23

Код:

var mc_array = [mc1_mc, mc2_mc, mc3_mc];
//
function compareXpos(element1, element2) {
        return element1._x-element2._x;
}
//
mc_array.sort(compareXpos);

И пообещай прочесть рассказ про Array.sort перед сном.

Futs 22.07.2005 22:19

спасибо, читал, обещаю повторить пройденное


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

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