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

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

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

Регистрация: Nov 2004
Адрес: Кстово
Сообщений: 54
Post Создание копии клипов из класса

Есть класс,его код
Код:
class TEffect extends MovieClip {
	var s1, s2:MovieClip;
	private var str:String = "";
	function set strN(s:String):Void {
		str = s;
	}
	function get strN():String {
		return str;
	}
	public function eff1(tFormat:TextFormat, interval:Number) {
		var lengt:Number = str.length;
		var str1:String = str;
		var i:Number = 1;
		var func:Function = function () {
			var st:String = str1.charAt(i-1);
			trace(st);
			set("this.s"+i+".s2.text_txt.text", st);
			set("this.s"+i+".s2.text_txt.autoSize", true);
			eval("this.s"+i+".s2.text_txt").setTextFormat(tFormat);
			eval("this.s"+i+".s2").play();
			i++;
			if (i>lengt) {
				clearInterval(i1);
			} else {
				this.s1.duplicateMovieClip("s"+i, 2*i+100);
				this.trace(s1)
			}
		};
		var i1:Number = setInterval(func, interval);
	}
}
клипы есть в мувике. общая иерархия такая this.s1.s2.text_txt.
не работает метод duplicateMovieClip(хочу копировать клип s1),ему что то не нравится,почему такое может быть?Может у кого нибудь есть что сказать по данной проблеме?

Старый 07.01.2006, 18:19
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
Цитата:
Сообщение от Ja-Ja
ему что то не нравится,почему такое может быть?
Ты прав, вокруг одни телепаты.

А у класса конструктора быть не должно?

Старый 07.01.2006, 18:36
Ja-Ja вне форума Посмотреть профиль Отправить личное сообщение для Ja-Ja Найти все сообщения от Ja-Ja
  № 3  
Ответить с цитированием
Ja-Ja

Регистрация: Nov 2004
Адрес: Кстово
Сообщений: 54
Наиогромнейшее спасибо,ничего не работает.

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

Регистрация: Dec 2003
Сообщений: 3,925
ну это твои проблемы. Ты даже не описал какую ошибку говорит компилятор. Я второй раз повторю -- телепатов здесь нет.

Если на твой вопрос не отвечают надо сначала посмотреть, как ты его задал.

Старый 07.01.2006, 19:43
Ja-Ja вне форума Посмотреть профиль Отправить личное сообщение для Ja-Ja Найти все сообщения от Ja-Ja
  № 5  
Ответить с цитированием
Ja-Ja

Регистрация: Nov 2004
Адрес: Кстово
Сообщений: 54
Никаких ошибок он не выдает,просто нет копирования мувиков вообще. Ему что то не нравится,это не значит,что он ругается и дает ошибку,просто повторяю не происходит копирование,хотя по логике все правильно написал.

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

Регистрация: Dec 2003
Сообщений: 3,925
Обычно в таком случае ошибка состоит в том, что дублирование происходит, просто человек не смещает новый объект и визуально ничего не меняется.

Выход: посмотреть в дебаггере, создаются ли новые мувики. Если нет -- трейсить this, а также параметры, передаваемые методу.

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

Регистрация: Jun 2005
Адрес: в Питере
Сообщений: 981
Привет, внимательно почитал код, хм, не понял что бы это значило:
this.trace(s1)
И ещё вместо
eval("this.s"+i+".s2").play();
я бы записал
this["s"+i].s2.play() // посимпатишнее..
Что делает класс толком не понял, но у меня тоже была проблема с путями, когда кидаешь function в setInterval, то потом если сделать там trace(this), то выводит undefined!! не помню, че я сделал, но попробуй протрейсить свои пути, ведь если компилятор ошибки не выдает, то либо класс не подключен, либо Duplicate не вызывается, либо флэш не может найти клип с которого дублировать. Вобщем попробуй по шагам пройти, это особенно удобно если ещё дебаггер припахать...удачи!:-)
__________________
Делай всё быстро, но не торопись!.._/*o|o*\_.

Старый 08.01.2006, 15:05
Ja-Ja вне форума Посмотреть профиль Отправить личное сообщение для Ja-Ja Найти все сообщения от Ja-Ja
  № 8  
Ответить с цитированием
Ja-Ja

Регистрация: Nov 2004
Адрес: Кстово
Сообщений: 54
Большое спасибо!

зы
this.trace(s1) - это что то я напарил =)

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

Регистрация: Dec 2003
Сообщений: 3,925
У функции, вызываемой через интервал, нет this. Именно поэтому форма записи для класса отличается

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

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

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


 


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


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