Просмотр полной версии : опять массивы
есть массив из объектов, хочу отсортировать его по _х объектов. лучше всего добавлять в массив свойство каждому элементу и по свойству сортировать, но я чего-то те пойму как добавить это свойство.
KidsKilla
22.07.2005, 19:30
Array.sortOn("_x");
я тоже так думал, не выходит
Whatsername
22.07.2005, 19:47
но я чего-то те пойму как добавить это свойство.
Не совсем понятно, чем тебе помочь. Это свойство добавляется, равно как и все остальные, в констукторе. Заведи метод класса, подстчитывающий количество созданных объектов, и записывай это число в свойство каждого объекта.
спасибо, но чего понять не могу так это классов, к сожалению, а очень хочется...
Whatsername
22.07.2005, 19:54
>> есть массив из объектов
а о каких объектах речь?
Обычные мувики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 перед сном.
спасибо, читал, обещаю повторить пройденное
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.