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

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

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

Регистрация: Jun 2009
Сообщений: 39
По умолчанию как наложить маску на подгружаемый swf во флэш

Здравствуйте, у меня проблема. Если можете, помогите, пожалуйста. У меня созданы две презентации из фотографий на флэше. Их принцип в том, что фотографии двигаются горизонтально и вертикально. И мне естественно нужно проецировать только рабочее поле, а не все объекты полностью. И еще мне нужно эти презентации подгружать во флэш при нажатии на кнопки, что у меня успешно делается.
Теперь моя проблема…..при подгружании презентации проигрываются в полном объеме, а мне нужно только рабочую область. Как мне сделать, подскажите! Возможно, ли наложить маску на подгружаемую swf. Или как?????

Старый 26.06.2009, 16:03
aksios вне форума Посмотреть профиль Отправить личное сообщение для aksios Найти все сообщения от aksios
  № 2  
Ответить с цитированием
aksios
loading 50%
 
Аватар для aksios

Регистрация: Jun 2005
Адрес: I am where I should be
Сообщений: 3,567
Отправить сообщение для aksios с помощью ICQ
Цитата:
Сообщение от scorpi_Natalia8 Посмотреть сообщение
Возможно, ли наложить маску на подгружаемую swf. Или как?????
Здравствуйте, это возможно. Скорее всего, Вы пытаетесь загрузить внешний клип на основную временую линейку, а не как нужно- в контейнер.
Предположим, у нас есть подгружаемый файл.
В основном файле на первом слое рисуем прямоугольничек, выделяем,конвертируем в мувиклип. В свойствах (когда он уже создан - это будет у него как бы второе имя для вызова из скриптов) пишем ему имя container_mc и запоминаем его.
Добавляем еще 2 слоя и на верхнем слое пишем код:
Код AS1/AS2:
container_mc.loadMovie("внешний клип.swf", this);
Во втором слое рисуем маску и меняем свойство этого слоя - чтобы он стал маской для первого.
Все готово, тестируем - если оба файла сохранены в одной папке и подгружаемый скомпелирован, то Вы получите его под маской. Ну и двигайте его на здоровье.
Пожалуйста.

Старый 29.06.2009, 14:43
scorpi_Natalia8 вне форума Посмотреть профиль Отправить личное сообщение для scorpi_Natalia8 Найти все сообщения от scorpi_Natalia8
  № 3  
Ответить с цитированием
scorpi_Natalia8

Регистрация: Jun 2009
Сообщений: 39
Огроменное ВАМ спасибо! Вы меня спасли!!! СпасибОООООО….СпасиииБОООО ! Получилось!

Но…теперь у меня тогда другой вопрос, как вставить предзагрузчик на этот подгружаемый swf. Везде находила через вставку объекта на второй кадр. А здесь это не пойдет.

Старый 29.06.2009, 14:54
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 4  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Изпользуйте MovieClipLoader. Этот класс позволяет отслеживать процесс загрузки.

Старый 30.06.2009, 08:27
scorpi_Natalia8 вне форума Посмотреть профиль Отправить личное сообщение для scorpi_Natalia8 Найти все сообщения от scorpi_Natalia8
  № 5  
Ответить с цитированием
scorpi_Natalia8

Регистрация: Jun 2009
Сообщений: 39
Можно ли Вас спросить. Как правильнее делать. Моя задача выложить на сайт флэшку (которая подгружается предзагрузкой), на ней есть две кнопки, при нажатии на них должны загружаться внешние флэшки, на которые должны накладываться маски. Как правильнее сделать: наложить маски и предзагрузки для внешних флэшек отдельно и подгружать в основную флэшку в готовом виде, или же маски и предзагрузки для внешних флэшек делать в основной флэшке? Подскажите пожалуйста, если Вам не трудно.

Добавлено через 2 часа 8 минут

Я поняла какая у меня проблема.
Если создавать маску и загружать swf как …..container_mc.loadMovie("внешний клип.swf", this);….
То предзагрузку поставить нельзя.
А если загружать как LoadClip, то маска не накладывается….
Если можете помогите пожалуйста, справиться с проблемой.


Последний раз редактировалось scorpi_Natalia8; 30.06.2009 в 10:37.
Старый 30.06.2009, 11:21
aksios вне форума Посмотреть профиль Отправить личное сообщение для aksios Найти все сообщения от aksios
  № 6  
Ответить с цитированием
aksios
loading 50%
 
Аватар для aksios

Регистрация: Jun 2005
Адрес: I am where I should be
Сообщений: 3,567
Отправить сообщение для aksios с помощью ICQ
scorpi_Natalia8, бог мой, ну что за апы темы.
Это уже второй вопрос.
Ну ладно, давайте сделаем с прелоадером.
Есть несколько способов реализовать загрузку внешнего файла и тут речь о простейшем.
Кодик теперь усложниться, поскольку loadMovie не имеет встроеного прелоадера.

Для начала, нарисуйте прелоадер - прямоугольничек на отдельном слое, конвертируйте в мувиклип и укажите в свойствах имя bar_mc для обращения из кода.

Теперь на отдельный слой в основном клипе добавьте код:
Код AS1/AS2:
function loadSwf(path) {
	_root.bar_mc._visible=true;
	_root.container_mc.loadMovie(path,this);
	_root.onEnterFrame = function() {
		var total = _root.container_mc.getBytesTotal();
		var loaded = _root.container_mc.getBytesLoaded();
		var pr = loaded/total*100;
		_root.bar_mc._xscale = pr;
		if (pr == 100) {
			delete _root.onEnterFrame;
			_root.bar_mc._visible=false;
		}
	}
}
Ну и наконец, замените
Код AS1/AS2:
container_mc.loadMovie("внешний клип.swf", this);
на:
Код AS1/AS2:
_root.loadSwf("внешний клип.swf", this);
*Прелоадер будет показывать загрузку файла - локально этот процесс очень быстрый поэтому при тестировании в среде флеша в основном меню нужно и в View->DownloadSettings выбрать эмуляцию загрузки на маленькой скорости.

Старый 30.06.2009, 12:49
scorpi_Natalia8 вне форума Посмотреть профиль Отправить личное сообщение для scorpi_Natalia8 Найти все сообщения от scorpi_Natalia8
  № 7  
Ответить с цитированием
scorpi_Natalia8

Регистрация: Jun 2009
Сообщений: 39
Я сильно извиняюсь, но просто не знаю к кому больше обратиться, поэтому и пишу на форум свою проблему. Я практику прохожу, а если не сделаю, то все полетит. А программирую на флэше всего 2 недели.

Я вот не поняла, а что на разных слоях писать коды
Код AS1/AS2:
_root.loadSwf("внешний клип.swf", this);
И

Код AS1/AS2:
function loadSwf(path) {
	_root.bar_mc._visible=true;
	_root.container_mc.loadMovie(path,this);
	_root.onEnterFrame = function() {
		var total = _root.container_mc.getBytesTotal();
		var loaded = _root.container_mc.getBytesLoaded();
		var pr = loaded/total*100;
		_root.bar_mc._xscale = pr;
		if (pr == 100) {
			delete _root.onEnterFrame;
			_root.bar_mc._visible=false;
		}
	}
}
А как тогда будет связан клип с функцией loadSwf

У меня вообще мммм…почему то не хочет…так работать. Вроде сделала, как вы написали

Добавлено через 3 минуты
не могли бы вы...если не трудно.....исходник выслать...так будет проще...не могу понять в чем ошибка

Добавлено через 14 минут
На разных делаю или на одном слое…проигрывает swf, но предзагрузчик не работает.

Добавлено через 24 минуты
вот мой исходник


Последний раз редактировалось iNils; 30.06.2009 в 13:26.
Старый 30.06.2009, 13:25
aksios вне форума Посмотреть профиль Отправить личное сообщение для aksios Найти все сообщения от aksios
  № 8  
Ответить с цитированием
aksios
loading 50%
 
Аватар для aksios

Регистрация: Jun 2005
Адрес: I am where I should be
Сообщений: 3,567
Отправить сообщение для aksios с помощью ICQ
Эмм... Ну вот пример для СS3 сохраненный.
Вложения
Тип файла: zip sample.zip (7.3 Кб, 107 просмотров)

Старый 30.06.2009, 13:26
scorpi_Natalia8 вне форума Посмотреть профиль Отправить личное сообщение для scorpi_Natalia8 Найти все сообщения от scorpi_Natalia8
  № 9  
Ответить с цитированием
scorpi_Natalia8

Регистрация: Jun 2009
Сообщений: 39
все должно находиться под слоем маски (все слои (коды, container, preload))?

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
По умолчанию 18000

scorpi_Natalia8, для оформления своего кода, надо использовать теги [code][/code].
__________________
(и)Нильс.ru | Плагины для FlashDevelop


Последний раз редактировалось iNils; 20.03.2010 в 03:07.
Создать новую тему Ответ Часовой пояс GMT +4, время: 10:43.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

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


 


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


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