Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 04.12.2009, 16:40
misha_yu вне форума Посмотреть профиль Отправить личное сообщение для misha_yu Найти все сообщения от misha_yu
  № 1  
Ответить с цитированием
misha_yu

Регистрация: Jun 2008
Сообщений: 56
По умолчанию как передать структуру XML в дочерний объект?

всем привет,
вопрос: как передать структуру XML в дочерний объект?

Код AS3:
// Инициализация в родителе
 
var myChildObject = new myChildClass(myXMLTag);

Код AS3:
// Конструктор объекта дочернего класса
 
public function myChildClass (XMLStructure:???){
 
var myXML:XML = new XML;
myXML.XMLStructure = "myString";
 
}
Какого типа должена быть XMLStructure ?
И возможно ли вообще таким образом передать структуру XML объекта?

Спасибо.

Старый 04.12.2009, 16:44
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 2  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Код AS3:
public function MyChildClass(xmlStructure:XML)
{
    super();
    var myXML:XML = xmlStructure.copy();
    myXML.XMLStructure = "myString";
}
var myChildObject:MyChildClass = new MyChildClass(myXMLTag);
Классы - с прописной.
У функций должен быть возвращаемый тип.
У переменных должен быть тип.
Переменные и методы - со строчной.
Круглые скобки после вызова конструктора.
super() - первой строчкой в конструкторе.
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 04.12.2009 в 16:46.
Старый 05.12.2009, 11:56
misha_yu вне форума Посмотреть профиль Отправить личное сообщение для misha_yu Найти все сообщения от misha_yu
  № 3  
Ответить с цитированием
misha_yu

Регистрация: Jun 2008
Сообщений: 56
большое спасибо,
пожалуйста поясните в каком виде должен передаваться myXMLTag.
так не получается:
Код AS3:
var myChildObject:MyChildClass = new MyChildClass(MyXML.user.name)
что вставить в скобочки в родителе? Если структура например = MyXML.user.name ?

спасибо.

Старый 05.12.2009, 14:46
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 4  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
XMLList - это уже не XML, ето коллекция XMLей.
__________________
Hell is the possibility of sanity

Старый 05.12.2009, 16:15
SamFR вне форума Посмотреть профиль Отправить личное сообщение для SamFR Посетить домашнюю страницу SamFR Найти все сообщения от SamFR
  № 5  
Ответить с цитированием
SamFR

Регистрация: Mar 2008
Адрес: Ростов-на-Дону
Сообщений: 354
Цитата:
Сообщение от wvxvw Посмотреть сообщение
super() - первой строчкой в конструкторе.
Мне кажется, это верно не всегда. При расширении сторонних компонентов часто бывает нужным произвести некую инициализацию до вызова конструктора суперкласса...

Старый 05.12.2009, 19:56
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 6  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Не-не, лучше так не делать... так можно и недозаполнение стека ? (stack underflow) получить или вообще попытаться прочитать из несущесвующего адреса в памяти, вобщем, лучше все делать по порядку - так надежнее.
__________________
Hell is the possibility of sanity

Старый 05.12.2009, 20:18
misha_yu вне форума Посмотреть профиль Отправить личное сообщение для misha_yu Найти все сообщения от misha_yu
  № 7  
Ответить с цитированием
misha_yu

Регистрация: Jun 2008
Сообщений: 56
дык... а как в родителе задать этот XMLList или XML в круглые скобочки
wvxvw, пожалуйста приведите пример для чайников для структуры MyXML.user.name.
Че то в хэлпине не найду ответа.

Старый 05.12.2009, 21:30
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 8  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
А тут как бы если вам нужно передать либо XML либо XMLList - то общий знаменатель у них Object... и ничего с этим не поделаешь...
В принципе, можно тип задать как MXMLList, но тогда, если нужно передать XML его прийдется конвертировать в XMLList.
Код AS3:
public function MyClass(arg:XMLList)
{
    super();
    this._list = arg;
}
Код AS3:
var list:XMLList = <a/> + <b/>;
var myClass:MyClass = new MyClass(list);
var xml:XML = <a/>;
myClass = new MyClass(XMLList(xml));
__________________
Hell is the possibility of sanity

Старый 05.12.2009, 22:23
GFreemen вне форума Посмотреть профиль Отправить личное сообщение для GFreemen Найти все сообщения от GFreemen
  № 9  
Ответить с цитированием
GFreemen
 
Аватар для GFreemen

Регистрация: Oct 2006
Адрес: Волгодонск
Сообщений: 182
Код AS3:
var myXML:XML=new XML(<hrenovXML bla="bla-bla-bla"></hrenovXML>);
var myClass=new MyClass(myXML);
Код AS3:
public class MyClass {
public function MyClass(neujeliEtoXML_param:XML){
}
}

Старый 06.12.2009, 10:03
misha_yu вне форума Посмотреть профиль Отправить личное сообщение для misha_yu Найти все сообщения от misha_yu
  № 10  
Ответить с цитированием
misha_yu

Регистрация: Jun 2008
Сообщений: 56
Дорогие товарищи, спасибо за ответы.
Но.... возможно я не правильно спросил или не понял ответов ... если так, прошу прощения ,

Дело в том что мой дочерний класс должен изменять некоторые значения тегов в основном XML-е. Какие именно задается в родителе. При этом не изменяя самой структуры основного XML.

Например myXML:
<authors>
<author1>Вася</author1>
<author2>Петя</author2>
</authors>

Код AS3:
MyChildClass(XMLTag:???, Name:String){
myXML.XMLTag = Name;
}
Код AS3:
var myChildObject_1 = new MyChildClass(autors.author1, "Вася") ;
var myChildObject_2= new MyChildClass(autors.author2, "Петя") ;
--------------------------------------------------------------------------------------
строка
Код AS3:
var myXML:XML = xmlStructure.copy();
полностью заменяет структуру исходного myXML на xmlStructure.
а строка
Код AS3:
myXML.XMLStructure = "myString";
потом просто добавляет к этой структуре таг под названием "XMLStructure".
Вот что у меня получилось ,

поможите


Последний раз редактировалось misha_yu; 06.12.2009 в 10:05.
Создать новую тему Ответ Часовой пояс GMT +4, время: 01:07.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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