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

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

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

Регистрация: Jul 2006
Сообщений: 5
По умолчанию Движение textField

доброго вам времени суток.
У меня такая проблема. Из хмл файла грузится в мувик текст, который потом рассовывется в массив.
Задача заключается в том, чтобы брать текст из массива по порядку и вставлять его в динамическое текстовое поле, после этого двигать это поле.
У меня на этом этапе произошла загвоздка. Получилось так, что у меня
.onEnterFrame один вложен в другой, в первом я изменяю переменную для того, чтобы выбирать из массива, а во втором .onEnterFrame у меня происходит движение текстового поля.

Проблемма заключается в том, что я никак не могу выйти из второго .onEnterFrame, он у меня сидит в мною определенной функции, но по return функция никак выходить не хочет. Подскажите, что делать.

Старый 04.07.2006, 15:54
Samodelkin вне форума Посмотреть профиль Отправить личное сообщение для Samodelkin Найти все сообщения от Samodelkin
  № 2  
Ответить с цитированием
Samodelkin

Регистрация: Jul 2005
Адрес: Москва
Сообщений: 452
Отправить сообщение для Samodelkin с помощью ICQ
Код покажи.
__________________
Давайте отбросим факты, чтобы увидеть суть

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

Регистрация: Jun 2005
Адрес: Moscow - immigrate from Volgodonsk
Сообщений: 2,534
жесть, зачем onEnterFrame пользовать?...делай delete onEnterFrame;

а вообще пользуй setInterval()

Старый 04.07.2006, 16:07
CloudTEmple вне форума Посмотреть профиль Отправить личное сообщение для CloudTEmple Найти все сообщения от CloudTEmple
  № 4  
Ответить с цитированием
CloudTEmple

Регистрация: Jul 2006
Сообщений: 5
Код:
function startT(success) {
	if (success == true) {
		rootNode = myXML.firstChild;
		XMLParsing(rootNode);
		_root.onEnterFrame = function() {
			if (lang == undefined) {
				lang = 2;
			}
			running_string(txtarray[lang][str_param], 200, 200, 5, 20, clrarray[lang][str_param]);
			str_param += 1;
		};
	}
}
и сама функция руннинг стринг
Код:
function running_string(str_var:String, x_coord:Number, y_coord:Number, x_diff:Number, f_size:Number, str_color:String) {
	t_field._x = x_coord;
	this.onEnterFrame = function() {
		trace(str_var);
		with (this) {
			createTextField("t_field", this.getNextHighestDepth(), x_coord, y_coord, 10, 10);
			t_field.autoSize = true;
			t_field.selectable = false;
			t_field.text = str_var;
			t_field._x -= x_diff;
			
		}
		var my_fmt:TextFormat = new TextFormat();
		with (my_fmt) {
			bold = true;
			size = f_size;
			color = str_color;
			font = "Tahoma";
		}
		this.t_field.setTextFormat(my_fmt);
		if ((this.t_field._x+this.t_field._width)<x_coord) {
			return true;
		}
	};
}
а насчет setInterval() интересно. Просто я привык все с помощью onEnterFrame делать


Последний раз редактировалось CloudTEmple; 04.07.2006 в 16:10.
Старый 04.07.2006, 16:18
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 5  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
В обоих случаях у вас onEnterFrame вешается на _root. И соотвественно при вызове running_string вы один onEnterFrame замещаете другим.

Я правда не понял что вы такое хитрое делаете и setInterval() тут тоже не к селу ни к городу.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 04.07.2006, 16:25
CloudTEmple вне форума Посмотреть профиль Отправить личное сообщение для CloudTEmple Найти все сообщения от CloudTEmple
  № 6  
Ответить с цитированием
CloudTEmple

Регистрация: Jul 2006
Сообщений: 5
да, сетинтервал не подходит... В общем, сточки должны одна за другой по порядку проплывать вдоль мувиклипа. str_param += 1; как раз отвеччает за это.
txtarray[lang][str_param] - массив определен в функции XMLParsing . он тут сейчас не у дел, потому я его не выкладывал. Массив двумерный, строчки должны быть на нескольких языках, в зависимости от нажатия кнопки в мувике будут браться различные сточки.
а куда мне его вешать, onЕnterFrame этот? Пытался создать пустой мувиклип и в него загнать текстфилд, но там тоска, ни один из циклов не ждет другого.


Зы, а почему return не работает? Ведь написано: "Команда return останавливает выполнение функции и заменяет ее на возвращаемое значение."


Последний раз редактировалось CloudTEmple; 04.07.2006 в 16:35.
Старый 04.07.2006, 17:47
CloudTEmple вне форума Посмотреть профиль Отправить личное сообщение для CloudTEmple Найти все сообщения от CloudTEmple
  № 7  
Ответить с цитированием
CloudTEmple

Регистрация: Jul 2006
Сообщений: 5
Я придумал схему, правда она не совсем работет. Создал мувиклип, в нем создал текстовое поле. далее
Код:
_root.onEnterFrame = function() {
			if (lang == undefined) {
				lang = 2;
			}
			my_string = txtarray[lang][str_param];
			_root.attachMovie("text_mc", newtext, this.getNextHighestDepth(), {_x:100, _y:100});
			str_param += 1;
			if (str_param == txtarray[lang].length){
				str_param = 0;
				}
		};
	}
}
В мувике text_mc такой скрипт
Код:
this.onEnterFrame = function (){
	this.tfield.text = _root.my_string;
	this.tfield.autoSize = true;
	this.tfield._x -=1;
	if(this.tfield._x+this.tfield._width<0){
		this.unloadMovie();
		}
	}
вопрос, как мне остановить _root.onEnterFrame = function() вот это, чтобы attachMovie останавливался и ждал пока не проиграет мувик??

Старый 04.07.2006, 17:54
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 8  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Я так и не понял зачем вы два onEnterFrame используете?
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 04.07.2006, 21:58
CloudTEmple вне форума Посмотреть профиль Отправить личное сообщение для CloudTEmple Найти все сообщения от CloudTEmple
  № 9  
Ответить с цитированием
CloudTEmple

Регистрация: Jul 2006
Сообщений: 5
все разрешилось


Последний раз редактировалось CloudTEmple; 12.07.2006 в 20:15.
Создать новую тему Ответ Часовой пояс GMT +4, время: 03:38.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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