![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Регистрация: Sep 2008
Сообщений: 17
|
В результате ролик играет нормально, но не могу получить высоту и ширину, чтоб выставить клип по координатам.
|
|
|||||
|
до крайности странная строчка...
я так понимаю вы Loader'ом грузите. тогда скорее всего вместо этой строчки нужно вставить хотя может я ошибаюсь. ичто значит не можете получить? что трейс выдает? |
|
|||||
|
стервочка (я мужик)
|
ramshteks, в данном случаи это будет одно и тоже.
|
|
|||||
|
Регистрация: Sep 2008
Сообщений: 17
|
Трейс выдает 0 0.
movie - название клипа из подгружаемой swf. Как можно узнать размеры загруженой swf? тоже не работает. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
А вы уверены, что на момент трейса, ролик уже загружен?
|
|
|||||
|
Регистрация: Nov 2005
Сообщений: 1,058
|
Ну надо полюбому отлавливать initialize
|
|
|||||
|
Регистрация: Sep 2008
Сообщений: 17
|
Кусок из основного класса:
Вот класс Лоадера: 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);
}
}
}
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Вероятно, в первом кадре этого мувика ничего нет.
|
|
|||||
|
Регистрация: Sep 2008
Сообщений: 17
|
Да, первый кадр пустой. И как лучше в таких случаях поступать ? Нарисовать в нем прозрачный прямоугольник?
|
|
|||||
|
Цитата:
![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 21:18. |
|
|
« Предыдущая тема | Следующая тема » |
|
|