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

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

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

Регистрация: Sep 2008
Сообщений: 17
По умолчанию Как узнать width и height клипа (MovieClip)

Код:
		var movie:MovieClip = evt.target.loader.content.movie;
			this.addChild(movie);
			movie.x = movie.width/2;
			movie.y = movie.height/2;;
			movie.play();
			trace(movie.width);
			trace(movie.height);
В результате ролик играет нормально, но не могу получить высоту и ширину, чтоб выставить клип по координатам.

Старый 01.09.2008, 01:14
ramshteks вне форума Посмотреть профиль Отправить личное сообщение для ramshteks Найти все сообщения от ramshteks
  № 2  
Ответить с цитированием
ramshteks
 
Аватар для ramshteks

Регистрация: Jul 2007
Сообщений: 805
Отправить сообщение для ramshteks с помощью ICQ Отправить сообщение для ramshteks с помощью Skype™
Код:
evt.target.loader.content.movie;
до крайности странная строчка...
я так понимаю вы Loader'ом грузите.
тогда скорее всего вместо этой строчки нужно вставить
Код:
evt.target.content;
хотя может я ошибаюсь.
ичто значит не можете получить? что трейс выдает?

Старый 01.09.2008, 01:39
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 3  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
ramshteks, в данном случаи это будет одно и тоже.

Старый 01.09.2008, 02:09
Visual вне форума Посмотреть профиль Отправить личное сообщение для Visual Найти все сообщения от Visual
  № 4  
Ответить с цитированием
Visual
 
Аватар для Visual

Регистрация: Sep 2008
Сообщений: 17
Трейс выдает 0 0.
movie - название клипа из подгружаемой swf.
Как можно узнать размеры загруженой swf?

Код:
evt.target.content.width
evt.target.content.height
тоже не работает.

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

Регистрация: Sep 2002
Сообщений: 30,787
А вы уверены, что на момент трейса, ролик уже загружен?

Старый 01.09.2008, 02:31
†‡Paladin‡† вне форума Посмотреть профиль Отправить личное сообщение для †‡Paladin‡† Найти все сообщения от †‡Paladin‡†
  № 6  
Ответить с цитированием
†‡Paladin‡†

Регистрация: Nov 2005
Сообщений: 1,058
Ну надо полюбому отлавливать initialize

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

Регистрация: Sep 2008
Сообщений: 17
Кусок из основного класса:
Код:
var map:GameLoader = new GameLoader("map.swf", 300, 300);
addChild(map);
Вот класс Лоадера:

Код:
package main{

	import flash.display.Sprite;
	import flash.display.Loader;
	import flash.display.LoaderInfo;
	import flash.text.TextField;
	import flash.text.TextFieldAutoSize;
	import flash.net.URLRequest;
	import flash.events.Event;
	import flash.events.ProgressEvent;
	import flash.net.LocalConnection;
	import flash.display.MovieClip;

	public class GameLoader extends Sprite {
		public var loader:Loader = new Loader();
		private var loadStatus:TextField = new TextField();
		private var preloader_mc:Preloader = new Preloader();
		private var posX:int = 0;
		private var posY:int = 0;

		public function GameLoader(movie:String, x:int=0, y:int=0) {
			var request:URLRequest = new URLRequest(movie);
			posX = x;
			posY = y;
			loader.load(request);
			loader.contentLoaderInfo.addEventListener(Event.OPEN,displayPreloader);
			loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,updatePreloader);
			loader.contentLoaderInfo.addEventListener(Event.COMPLETE,displayMovie);
		}

		private function displayPreloader(evt:Event):void {

			this.addChild(preloader_mc);
			preloader_mc.x = 200;
			preloader_mc.y = 200;

		}
		private function updatePreloader(evt:ProgressEvent):void {

			var bytesLoaded:Number = evt.bytesLoaded;
			var bytesTotal:Number = evt.bytesTotal;
			var s:String = "";
			var percent:Number = 0;
			if (bytesTotal>0) {
				percent = Math.floor(bytesLoaded/bytesTotal*100);
			}
			preloader_mc.txt.text=percent+"%";
			preloader_mc.progressbar.gotoAndStop(percent+1);

		}
		private function displayMovie(evt:Event):void {

			removeChild(preloader_mc);

			var movie:MovieClip = evt.target.loader.content.movie;
			this.addChild(movie);
			movie.x = movie.width/2;
			movie.y = movie.height/2;
			movie.play();
			trace(movie.width);
			trace(movie.height);

			loader.contentLoaderInfo.removeEventListener(Event.OPEN,displayPreloader);
			loader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS,updatePreloader);
			loader.contentLoaderInfo.removeEventListener(Event.COMPLETE,displayMovie);

		}
	}
}

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

Регистрация: Sep 2002
Сообщений: 30,787
Вероятно, в первом кадре этого мувика ничего нет.

Старый 01.09.2008, 03:20
Visual вне форума Посмотреть профиль Отправить личное сообщение для Visual Найти все сообщения от Visual
  № 9  
Ответить с цитированием
Visual
 
Аватар для Visual

Регистрация: Sep 2008
Сообщений: 17
Да, первый кадр пустой. И как лучше в таких случаях поступать ? Нарисовать в нем прозрачный прямоугольник?

Старый 01.09.2008, 07:39
enepx вне форума Посмотреть профиль Отправить личное сообщение для enepx Посетить домашнюю страницу enepx Найти все сообщения от enepx
  № 10  
Ответить с цитированием
enepx
 
Аватар для enepx

Регистрация: Aug 2006
Адрес: Мюнхен
Сообщений: 509
Отправить сообщение для enepx с помощью ICQ Отправить сообщение для enepx с помощью Yahoo Отправить сообщение для enepx с помощью Skype™
Цитата:
Сообщение от Visual Посмотреть сообщение
Да, первый кадр пустой. И как лучше в таких случаях поступать ? Нарисовать в нем прозрачный прямоугольник?
Да, я так часто делаю.

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

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

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


 


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


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