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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.02.2006, 17:18
3s3 вне форума Посмотреть профиль Отправить личное сообщение для 3s3 Посетить домашнюю страницу 3s3 Найти все сообщения от 3s3
  № 1  
Ответить с цитированием
3s3

Регистрация: Oct 2005
Сообщений: 11
Отправить сообщение для 3s3 с помощью ICQ
По умолчанию delegate. есть проблемы.

Примерный код:

Код:
import mx.utils.Delegate;
 
_global.Foo = function (xml_file) {
 this.mData = new Array();
 
 this.mXML = new XML ();
 this.mXML.load (xml_file);
 this.mXML.onLoad = Delegate.create (this, this.Func1);
};

Foo.prototype.Func1 = function () {
  // здесь парсится XML
  // и идет запись в массив this.mData
}
 
Foo.prototype.getData = function () {
 trace (this.mData); // ПУСТОЙ!
}
при вызове функции getData оказывается, что все старательно записываемое в массив mData не записалось.

Как решить проблему?

Старый 23.02.2006, 17:29
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 2  
Ответить с цитированием
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Не мешать приемы из AS2 и AS1. В вашем случае пользоваться Function.call и все.

Старый 23.02.2006, 23:35
3s3 вне форума Посмотреть профиль Отправить личное сообщение для 3s3 Посетить домашнюю страницу 3s3 Найти все сообщения от 3s3
  № 3  
Ответить с цитированием
3s3

Регистрация: Oct 2005
Сообщений: 11
Отправить сообщение для 3s3 с помощью ICQ
Цитата:
Сообщение от Antares
Не мешать приемы из AS2 и AS1. В вашем случае пользоваться Function.call и все.
ок. исправил на вот это:

Код:
class Foo { var mData = new Array(); var mXML = null; function Foo (xml_file) { mXML = new XML (); mXML.func = Func1; mXML.scope = this; mXML.onLoad = function (success) { if (success) { this.func.call (this.scope); } } }; function Func1 () { // здесь парсится XML // и идет запись в массив mData } function getData () { trace (mData); // ОПЯТЬ ПУСТОЙ! }
что теперь делать?

Старый 23.02.2006, 23:54
ir73 вне форума Посмотреть профиль Отправить личное сообщение для ir73 Найти все сообщения от ir73
  № 4  
Ответить с цитированием
ir73
FD Team

блогер
Регистрация: Dec 2005
Сообщений: 365
Записей в блоге: 6
опять намешал AS 1 и 2 : ))

Старый 24.02.2006, 00:02
3s3 вне форума Посмотреть профиль Отправить личное сообщение для 3s3 Посетить домашнюю страницу 3s3 Найти все сообщения от 3s3
  № 5  
Ответить с цитированием
3s3

Регистрация: Oct 2005
Сообщений: 11
Отправить сообщение для 3s3 с помощью ICQ
будьте любезны -- ткните носом!

Старый 24.02.2006, 02:11
7thsky™ вне форума Посмотреть профиль Отправить личное сообщение для 7thsky™ Найти все сообщения от 7thsky™
  № 6  
Ответить с цитированием
7thsky™
Flash Aксакал
 
Аватар для 7thsky™

Регистрация: Jun 2005
Сообщений: 636
судя по коду проблема в парсере.

массив возвращается пустой или вместно него undefined?
если первое то проблема по любому в парсере

Старый 24.02.2006, 14:05
3s3 вне форума Посмотреть профиль Отправить личное сообщение для 3s3 Посетить домашнюю страницу 3s3 Найти все сообщения от 3s3
  № 7  
Ответить с цитированием
3s3

Регистрация: Oct 2005
Сообщений: 11
Отправить сообщение для 3s3 с помощью ICQ
Цитата:
Сообщение от 7thsky™
судя по коду проблема в парсере.

массив возвращается пустой или вместно него undefined?
если первое то проблема по любому в парсере
нет.
В парсере проблем нет.
Доказано простейшей проверкой, когда я не парсил xml, а делал внутри класса var со значением 1.
В коде парсера я ей ставлю значение 2.
Если протрейсить эту переменную в ф-ции getData, то получаем 1.

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

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

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


 


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


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