![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: May 2007
Адрес: Moscow
Сообщений: 263
|
День добрый.
Помогите пожалуйста разобраться с сабжем. Есть желание каждому из элементов массива присвоить свойство "Prop"(Boolean), которое, по-умолчанию,= false. К сожалению, в хелпе мало информации по addProperty. Подскажите пожалуйста, как это сделать. Нерабочий код: import mx.core.UIObject;
class classes.C extends UIObject{
public var arr:Array;
public function C(){
arr=[];
arr.addProperty("Prop", arr.getProp, arr.setProp);
arr.setProp = function(p:String):Void {
trace("Добавляем свойство: " + p);
if(p=="true"){this.Prop = true;}else{this.Prop = false;}
};
arr.getProp = function():Boolean {
return this.Prop;
};
trace(arr.Prop)
arr[3].Prop="true";
trace(arr[3].Prop);
}
}
|
|
|||||
|
|
|
|||||
|
Регистрация: May 2007
Адрес: Moscow
Сообщений: 263
|
2 BigDan:
Вы не ответили на мой вопрос. Про многомерные массивы я в курсе. Вопрос в следующем: 1.как задать свойства элемента массива? 2.как задать свойство-default для всех элементов массива? грубо говоря, при трассировке хочется видеть следующее: |
|
|||||
|
1.я тебе уже отписал во втором посте.
2.пройтись циклом по всем элементам. |
|
|||||
|
Регистрация: May 2007
Адрес: Moscow
Сообщений: 263
|
1.Не катит. прочитай что мне нужно увидеть при трассировке.
2. А что, нельзя чтобы при создании нового элемента массива это свойство было установлено у него дефолтом? Что-нить типа arr.constructor{prop:false} |
|
|||||
|
Цитата:
|
|
|||||
|
Регистрация: May 2007
Адрес: Moscow
Сообщений: 263
|
2 silin: звучит разумно..
наследник Array делать бессмыслено т.к. проблема не в нем, а на уровне его элементов, а задать их свойства у меня не получилось (2 All: буду крайне признателен, если кто-нибудь кинет рабочий пример решения вопроса данным способом). Обошел проблемку немного с другой стороны - решил сделать класс-наследник String, обладающий свойством "prop" и экземпляры данного класса помещать в массив.. Вроде звучит здраво, но реализовать не получается.. Укажите пожалуйста на ошибку в коде. |
|
|||||
|
непонятно чего ты хочешь реализовать..
повторюсь, нельзя организовать свойство у простого типа, только у наледника Object т.е. елементами твоего массива должны быть объекты, для которых определены prop, value, txt или чего еще захочешь, о чем тебе BigDan сразу и сказал.. если нужно дефолтовое значение, ничего не мешает его определить class Element {
var prop:Boolean=false;
var value:Number;
function Element(val:Number){
value=val;
}
}
|
|
|||||
|
Регистрация: May 2007
Адрес: Moscow
Сообщений: 263
|
Спасибо. Это и было нужно. Объект(наследование от String) я создал, но дефолтовое свойство пытался для него через return прописать - не получилось. Спасибо. Топик закрыт.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 09:16. |
|
|
« Предыдущая тема | Следующая тема » |
|
|