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

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

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

Регистрация: Jun 2012
Сообщений: 31
По умолчанию как в функции возвратить значение одной функции

Здравствуйте.
Не знаю как правильно сформулировать вопрос, в общем покажу на примере

Код AS3:
private function OpenXMLcode(url:String,lenguage:String,choice:String):String
		{
			//другой код
 
		    urlLoader.addEventListener(Event.COMPLETE, textLoaded);
 
 
			function textLoaded(e:Event):void
			{	
				//другой код
 
				//и теперь главное, нужно в функции OpenXMLcode возвратить переменную _currentText
				// но программа считает что я хочу возвратить в этой функции а именно в textLoaded.
 				//Вопрос как мне устранить эту проблему?
 
				return _currentText
			}
		}
Отнеситесь с пониманием не могу разобраться. на перед спасибо

Старый 21.08.2013, 00:38
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 2  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Обработчики событий не чего не возвращают! У Вас даже указанно :void и значит - это невозможно!

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

Регистрация: Feb 2012
Сообщений: 1,540
Во-первых, использовать функции внутри функций - ужасно неправильно.
Во-вторых, функция textLoaded вызователся после загрузки текста, что равно = она запуститься после того, как выполнится функция OpenXMLCode, да и мног другого кода тоже.
Используйте переменные и "асинхронный код".
В-третьих, в функции OpenXMLCode вы НЕ вызываете textLoaded, т.е. вы просто создаете функцию, не вызывая ее.
Почему же тогда что-либо должно возвратиться?

Цитата:
Обработчики событий не чего не возвращают! У Вас даже указанно :void и значит - это невозможно!
Не стоит отвечать, если не понимаешь до конца суть.

Старый 21.08.2013, 00:49
Артур177 вне форума Посмотреть профиль Отправить личное сообщение для Артур177 Найти все сообщения от Артур177
  № 4  
Ответить с цитированием
Артур177

Регистрация: Jun 2012
Сообщений: 31
не в том дело мне просто нужно когда я напишу OpenXMLcode('XML/Menu/region.xml','ru','name') возвратила текст
может есть еще какая-то возможность?

Старый 21.08.2013, 00:50
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 5  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Цитата:
Не стоит отвечать, если не понимаешь до конца суть.
Полностью с Вами согласен! Но тогда Вам стоило обьяснить сразу, что даже если автор выполнит все Ваши указания, то обработчик все равно не чего не вернёт!

Старый 21.08.2013, 00:52
MikroAcse вне форума Посмотреть профиль Отправить личное сообщение для MikroAcse Найти все сообщения от MikroAcse
  № 6  
Ответить с цитированием
MikroAcse
 
Аватар для MikroAcse

Регистрация: Feb 2012
Сообщений: 1,540
Даже если так, то кому он должен что-либо возвращать?

Добавлено через 1 минуту
Артур, загрузка происходит не моментально. Поэтому Ваша задача имеет решение только на AIR.

Старый 21.08.2013, 00:57
Артур177 вне форума Посмотреть профиль Отправить личное сообщение для Артур177 Найти все сообщения от Артур177
  № 7  
Ответить с цитированием
Артур177

Регистрация: Jun 2012
Сообщений: 31
мне просто нужно вернуть текст после того как я его загружу и обработаю
я к чему вел вопрос может есть возможность в функции textLoaded возвратить текст для функции OpenXMLcode?

Старый 21.08.2013, 01:00
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 8  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Вам лучшим советом будет - прислушаться к словам MikroAcse, о первом пункте ( вообще обо всех ) и пересмотреть архитектуру кода. Так изначально неправильно.

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

Регистрация: Jun 2012
Сообщений: 31
ну а как бы вы справились бы с этой проблемой?

Старый 21.08.2013, 01:04
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 10  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
А что Вам нужно с загруженными данными после загрузки сделать?

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

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

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


 


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


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