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

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

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

Регистрация: Sep 2005
Адрес: Tomsk
Сообщений: 39
Отправить сообщение для seeker2005 с помощью ICQ
Post [AS2]*XML.childNodes.nodeName в своем классе

Как можно зарегистрировать в своем классе MyClass функцию listName, которая возвращала бы nodeName документа?
Документ загружается в класс MyClass. Отдать массив childNodes экземпляру класса MyClass получается, а вот потом взять listName - нет nodeName у экземпляра класса MyClass при этом работает. Уже по всякому пробовал - как с extends XML, так и просто через var my_xml:XML в классе MyClass.

Старый 19.09.2005, 12:51
IvanBatsuev вне форума Посмотреть профиль Отправить личное сообщение для IvanBatsuev Найти все сообщения от IvanBatsuev
  № 2  
Ответить с цитированием
IvanBatsuev

Регистрация: Sep 2005
Сообщений: 37
Код покажи...
А то не очень ясно...

Старый 19.09.2005, 13:00
seeker2005 вне форума Посмотреть профиль Отправить личное сообщение для seeker2005 Найти все сообщения от seeker2005
  № 3  
Ответить с цитированием
seeker2005

Регистрация: Sep 2005
Адрес: Tomsk
Сообщений: 39
Отправить сообщение для seeker2005 с помощью ICQ
Кусок из класса:

class test extends XML
{
public function test()
{
super("<playlist><romantic><r></r></romantic><arabic></arabic></playlist>");
}

public function get lists():Array
{
return this.firstChild.childNodes;
}
public function get listName():String
{
var s = this;
return s.nodeName;
}
}

var tt:test = new test();
var ar:Array = new Array();
ar = tt.lists;
trace(ar[0].nodeName);// здесь без проблем все работает
trace(tt.lists[0].listName);// здесь выводит как undefined

Старый 19.09.2005, 22:13
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 4  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
tt.lists[0] не принадлежит классу test, геттер не работает..
можно так (не знаю тока зачем оно надо)
class test extends XML
{
public function test()
{
super("<playlist><romantic><r></r></romantic><arabic></arabic></playlist>");
}

public function get lists():Array
{
return this.firstChild.childNodes;
}
public function get listName():String
{
var a=[],x=this.lists;
for(var i=0;i<x.length;i++) a.push(x[i].nodeName);
return a;
}
}
/////////
var tt:test = new test();
trace(tt.listName[0]);// romantic

Старый 20.09.2005, 06:44
seeker2005 вне форума Посмотреть профиль Отправить личное сообщение для seeker2005 Найти все сообщения от seeker2005
  № 5  
Ответить с цитированием
seeker2005

Регистрация: Sep 2005
Адрес: Tomsk
Сообщений: 39
Отправить сообщение для seeker2005 с помощью ICQ
Как вариант подойдет конечно, но... Моя вина, не объяснил сути - надо создать пользовательское API для плейлиста... Плейлист хранится во внешнем xml документе (для простоты понимания выкинул и сделал описание внутри). Надо сделать функционал, чтобы например пользователь мог сделать вот так:

var pl:Playlist = new Playlist();
trace(pl.lists.length); // количесво сохраненных пользовательских листов
trace(pl.lists[0].listName); // название плейлиста

Причем важно, чтобы были и методы set и get. По сути listName - это повторение функционала nodeName, за тем исключением, что будет реализовано еще и сохранение в файл.

Вариант с созданием просто документа xml внутри класса Playlist тоже я так понимаю результата на даст по части nodeName?

Просто в принципе, можно реализовать через методы set и get?

Старый 20.09.2005, 07:30
IvanBatsuev вне форума Посмотреть профиль Отправить личное сообщение для IvanBatsuev Найти все сообщения от IvanBatsuev
  № 6  
Ответить с цитированием
IvanBatsuev

Регистрация: Sep 2005
Сообщений: 37
а ignoreWhite=true ты установил?

Старый 21.09.2005, 06:53
seeker2005 вне форума Посмотреть профиль Отправить личное сообщение для seeker2005 Найти все сообщения от seeker2005
  № 7  
Ответить с цитированием
seeker2005

Регистрация: Sep 2005
Адрес: Tomsk
Сообщений: 39
Отправить сообщение для seeker2005 с помощью ICQ
да, установил...
тока это то тут причем?

Создать новую тему Ответ Часовой пояс GMT +4, время: 16:01.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра
Комбинированный вид Комбинированный вид

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

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


 


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


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