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

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

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

Регистрация: Mar 2008
Сообщений: 259
По умолчанию Размеры сцены и мувиклипов

Возникло несколько вопросов, которых с помощью документации, к сожалению, решить не получилось
1 (скорее не вопрос, а уточнее). Правильно ли я понимаю, что Stage.align по умолчанию center? В следующем вопросе поясню почему это так меня затронуло
2. Дело в том, что при помещении мувиклипа на сцену возникает ряд проблем с размерами этого самого мувиклипа и самой сцены.
2.1. Никак не хотят устанавливаться в какое либо значение параметры MovieClip.height и width. Если их затрейсить без изменения, они получаются равны нулю. Если их изменить, то этот мувиклип просто пропадает со сцены и трейс этих параметров все равно возвращает 0.
2.2. При помещении на сцену мувиклипа, скажем, размером 300x600 сцена не принимает размер этого мувиклипа, а делается достаточно большой. При попытке затрейсить Stage.stageHeight или stageWidth выдаются какие-то непонятные значения, типа 796x1140, при попытке изменить это параметры ничего не изменяется. Собственно вопрос, как сделать, чтобы сцена была того же размера, как и мувиклип и как установить высоту и ширину собственно по умолчанию?

Старый 27.03.2008, 02:03
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Вас непонятно.

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

Регистрация: Dec 2007
Сообщений: 204
Если трудно дается высказывание мыслей, необходимо выкладывать хотя бы код ваших действий.

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

Регистрация: Mar 2008
Сообщений: 259
На самом деле просто хочу динамически подгрузить на сцену мувиклип. А он после подгрузки непонятно как располагается на сцене.

Ладно, на конкретном и упрощенном-укороченном примере На самом деле конечно нужно добавлять лисенер на загрузку объекта и т.п., но считаем, что объект подгружается мгновенно (с локалхоста)
Все это компилировалось в Flex Builder 3 (AS project)
Код:
package 
{
	import flash.display.StageAlign;
	import flash.display.Sprite;
	import flash.display.Loader;
	import flash.net.URLRequest;

	public class TestClass extends Sprite
	{	
		public var test:Loader;
				
		public function TestClass()
		{
			stage.align=StageAlign.TOP_LEFT; //по умолчанию center, при нем подгруженный объект вообще выезжает за пределы сцены
			stage.stageHeight=550; //попытка установить высоту сцены
			stage.stageWidth=150; // и ширину сцены успехов не приносит
			test = new Loader();
			var url:URLRequest = new URLRequest('test.swf');
			//test.width = 100; при попытке установить высоту и ширину любого display объекта, он исчезает со сцены, в данном случае это не МувиКлип, но с Мувиклипом тоже самое
			test.load(url);
			this.addChild(test);
		}
	}
}
Теперь еще раз:
1. подгружается test.swf, попытки установить ширину его приводят к визуальному исчезновению его со сцены - это баг, фича, недоработка?
2. при попытке в ASе установить ширину и высоту сцены ничего не получается, просто эти настройки игнорируются.
3. После компиляции в Flex Builder 3 получается, что сам display object (в данном случае лоадер, им может быть тот же мувиклип) ужимается в сцене. То есть, к примеру в html'e задаем width 550, height 150, сцена занимает 550*150, а сам объект короче и уже, несмотря на то, что размер самого объекта 550*150. Это баг?
При этом, если в Flash CS3 создать пустой fla, сделать Document class TestClass и задать размер fla 550*150, то сцена занимает корректный размер и объект не ужимается.


Последний раз редактировалось Сайлас; 27.03.2008 в 15:21.
Старый 27.03.2008, 16:05
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 5  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
>>На самом деле конечно нужно добавлять лисенер на загрузку объекта и т.п., но считаем, что объект подгружается мгновенно (с локалхоста)

так нужно добавить и менять width по Event.COMPLETE
"мгновенно" ничего происходит, даже в локале

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

Регистрация: Mar 2008
Сообщений: 259
Ладно, на самом деле как управлять шириной мувика я разобрался.
Действительно у лоадера размерами управлять не получается.
Нужно получать контент лоадера как мувиклип:
Код:
loader.contentLoaderInfo.addEventListener(Event.INIT,onLoadMovie);
Код:
private function onLoadMovie(e:Event):void
{
	var movie:MovieClip = loader.content as MovieClip;
	movie.width=650;
	movie.height=350;
	this.addChild(movie);			
}
Однако проблема с размерами сцены не решилась

Старый 27.03.2008, 16:40
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 7  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
А что вы понимаете под сценой? то, что было Stage'м в АС2 или DisplayObjectContainer в котором находится загруженный клип?
Если вариант 1 - то из самого флеша никак.
Если вариант 2 - то свойства .width и .height...

ЗЫ. в мануале ж написано, что stageWidht и stageHeight read-only.
__________________
Hell is the possibility of sanity

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

Регистрация: Mar 2008
Сообщений: 259
Может у каждого свой мануал? О_о
Flex Builder 3 и Flash CS3:
Цитата:
stageHeight property
stageHeight:int [read-write]
Цитата:
stageWidth property
stageWidth:int [read-write]
Ну я хотя бы смог установить Stage в размер с мувиклипом, установив
Код:
stage.scaleMode = StageScaleMode.NO_SCALE;

Старый 27.03.2008, 17:20
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 9  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
да, есть непонятка: никакой он не [read-write] выходит..
во флешке:
Код:
stage.stageWidth = 150; 
trace( "stage.stageWidth : " + stage.stageWidth );
тестю в FD:
stage.stageWidth : 986// размер окна
в браузере
stage.stageWidth : 300// флешка вставлена с width=300

т.е. налицо явный приоритет контейнера, в котором "живет" флешка, все потуги изнутри что-то изменить тщетны, имхо

Старый 27.03.2008, 17:31
badun вне форума Посмотреть профиль Отправить личное сообщение для badun Найти все сообщения от badun
  № 10  
Ответить с цитированием
badun

Регистрация: Dec 2007
Сообщений: 269
Цитата:
Сообщение от Сайлас
Может у каждого свой мануал? О_о
Flex Builder 3 и Flash CS3:
Если уж цитировать хелп, то до конца прочесть надо
Цитата:
This property cannot be set.

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

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

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


 


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


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