![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: Oct 2004
Адрес: Москва
Сообщений: 168
|
Пытаюсь сделать функцию внешнего класса, произведенного от XML, которая, забирает имя xml файла и формирует объект на основе данных их xml. Данные не загружаются. Как правильно написать?
Класс: class xmlData extends XML
{
var newXML:XML;
function xmlData() {
var newXML:XML;
}
function loadXML(str:String) {
this.newXML.onLoad = function(success) {trace("sdf");}
this.newXML.load(str);
}
}
|
|
|||||
|
в твоем раскладе
class xmlData// extends XML
{
var newXML:XML;
function xmlData() {
newXML=new XML();
}
function loadXML(str:String) {
this.newXML.onLoad = function(success) {trace("sdf");}
this.newXML.load(str);
}
}
а уж если наследовать, то незачем еще объект создавать, все методы уже здесь: |
|
|||||
|
Регистрация: Oct 2004
Адрес: Москва
Сообщений: 168
|
silin спасибо.
Вообще, хотелось бы сделать так: Последовательность пунктов соответствует последовательности кода на AS Panel 1) Создаешь экземпляр класса 2) Применяешь метод к экземпляру класса, метод передает экземпляру класса XML данные 3) Применешь функции класса, позволяющие обрабатывать XML |
|
|||||
|
Регистрация: Oct 2004
Адрес: Москва
Сообщений: 168
|
Неужели никто не посоветует решения этой проблемы?
|
|
|||||
|
Регистрация: Feb 2006
Адрес: Рига
Сообщений: 42
|
Помоему для твоих описанных нужд подойдёт одна функция, которая принимает XML и возвращает данные скажем в массиве. Ты можешь так же описать эту функцию и в классе, и тебе не обязательно использовать конструктор, это в случае если не нужно наследование от XML, если же оно нужно смотри 2ой пример, который привёл silin.
З.Ы. Действительно ли тебе нужны классы, если ты не можешь определиться нужно ли тебе наследование от XML или нет? |
|
|||||
|
Banned
Регистрация: Dec 2003
Сообщений: 3,925
|
Неумение определить где нужно наследование, а где -- композиция, увы, говорит об одном. О необходимости немного поучиться.
А пока возьми лучше один из миллиона классов, перегоняющих XML в объект. Но помни, с XML работать всегда удобнее... |
|
|||||
|
Регистрация: Oct 2004
Адрес: Москва
Сообщений: 168
|
Пользуюсь с композицией. С екстендом конгечно дал лишку.
..."которая принимает XML" Принимает объект? Дело в том, что когда я на панели AS пишу xl = new xmlData(); а затем применяю метод класса xl.loadXML("xmldata.xml") , и после вызываю ещё один метод xmlData, то оказывается, что xmldata.xml не успел ещё подгрузится. поэтому последний вызванный метод не срабатывает. не срабатывает и trace(xl); Вопрос именно по алгоритму... те как возможно сделать так, чтобы инициализация объекта уже произошла тогда, когда вызывается новый метод |
![]() |
![]() |
Часовой пояс GMT +4, время: 01:40. |
|
|
« Предыдущая тема | Следующая тема » |
|
|