![]() |
|
||||||||||
|
|||||
|
Регистрация: Nov 2005
Сообщений: 106
|
Ситуация такая: есть несколько swf роликов, и есть один swf с интерфейсом, и "экранчиком" в котором эти самые swf должны крутиться. Загружаю в основную флешку один из этих роликов посредством MovieClipLoader. Флешка загружается, но обнаруживаются неприятные вещи:
1. так как основная флешка "резиновая", занимает весь экран браузера и способна тянуться под его размеры, сохраняя при этом неизменным размер и форматирование всех элементов интерфейса, включая "экранчик" в который грузятся внешние флешки - загружаемые флешки не получается закрепить на одном нужном месте, хотя мувиклип в который флешки грузятся, обрабатывается "выравнивающим" скриптом как и остальные элементы интерфейса. 2. подгружаемая флешка берет некий текст из txt файла, если ее отдельно запускать все нормально, но если она открывается внутри основной флешки - текст в ней не грузится. Привожу свой код: // настройки сцены
Stage.scaleMode = "noScale";
Stage.align = "TL";
// создадим объект для реагирования на изменение габаритов окна
var resize_obj = {};
// запомнили нормальную ширину
resize_obj.normal_width = 800;
// запомнили нормальную высоту
resize_obj.normal_height = 600;
// самое главное: список объектов, которые будем перемещать
resize_obj.position = [fon, ramka, bg];
// собственно, реакция на изменения габаритов окна
resize_obj.onResize = function()
{
var clip;
for (var i in this.position) {
// перебираем все клипы в списке
clip = this.position[i];
// восстанавливаем пропорции координат для каждого клипа
clip._x = Stage.width*clip._xRatio;
clip._y = Stage.height*clip._yRatio;
// если для клипа определена пропорция по ширине
if (clip._widthRatio != undefined) {
clip._width = Stage.width*clip._widthRatio;
}
// если для клипа определена пропорция по высоте
if (clip._heightRatio != undefined) {
clip._height = Stage.height*clip._heightRatio;
}
}
};
// связь между классом Stage и объектом resize_obj
Stage.addListener(resize_obj);
/* запоминаем пропорции координат
(отношение координат к нормальной ширине/высоте) */
var clip;
for (var i in resize_obj.position) {
// перебираем все клипы в списке
clip = resize_obj.position[i];
// пропорция координаты по горизонтали
clip._xRatio = clip._x/resize_obj.normal_width;
// пропорция координаты по вертикали
clip._yRatio = clip._y/resize_obj.normal_height;
}
/* запоминаем пропорции высоты и ширины
(отношение габарита к нормальной ширине/высоте) */
fon._widthRatio = fon._width/resize_obj.normal_width;
// подгружаем внешнюю флешку
var my_mcl:MovieClipLoader=new MovieClipLoader();
var my_obj:Object=new Object();
my_mcl.loadClip("house.swf",bg);
my_mcl.addListener(my_obj);
//ресайз
resize_obj.onResize();
Последний раз редактировалось d0cent; 18.05.2007 в 07:36. |
|
|||||
|
Регистрация: Nov 2005
Сообщений: 106
|
Вобщем, первую проблемму решил, просто добавив прозрачный фон флешке и разместив ее в нужном месте экрана с помощью HTML. А вот со вторым вопросом, почему подгружаемая флешка не открывает текстовый файл не разобрался. Гуру, помогите плиз.
|
|
|||||
|
Ветеран форума
Регистрация: Jul 2006
Адрес: Грузия, Тбилиси
Сообщений: 2,675
|
Ответ на второй вопрос скорее всего в путях, к сожалению нет этой части скрипта что бы дать досканальный ответ.
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
А _root используется в подгружаемой флешке?
|
|
|||||
|
Регистрация: Nov 2005
Сообщений: 106
|
Цитата:
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
А должно. _lockroot в помощь. Если не поможет — выкладывайте исходник.
|
|
|||||
|
Регистрация: Nov 2005
Сообщений: 106
|
Цитата:
|
|
|||||
|
Регистрация: Nov 2005
Сообщений: 106
|
_lockroot не помог, или я не так его использовал.
А вот код, который загружает текст из файла в загружаемой флешке: Цитата:
|
|
|||||
|
Ветеран форума
Регистрация: Jul 2006
Адрес: Грузия, Тбилиси
Сообщений: 2,675
|
нужно на текстовое поле txt1 ссылку давать от рута подгружающего
|
|
|||||
|
Регистрация: Nov 2005
Сообщений: 106
|
Цитата:
|
![]() |
![]() |
Часовой пояс GMT +4, время: 18:05. |
|
|
« Предыдущая тема | Следующая тема » |
|
|