Esse é um preloader muito simples, não temos nada no stage ou na biblioteca, tudo é criado por código dinamicamente. Este preloader é leve e para usá-lo basta colar o código abaixo no primeiro frame ou cena e colocar o conteúdo a ser carregado no próximo frame ou cena.O código abaixo gera dois retângulos ( movie clips) usando os métodos da classe graphics. O rect chamado bar será a barra de carregamento e o rect barMask será a máscara aplicada sobre a bar. O tamanho de barMask é incrementado a medida que ocorre o carregamento.
Caso queria ver um exemplo mais detalhado de preloader com AS 3 click aqui.
Caso queria ver o resultado do que é gerado pelo código abaixo, click aqui.
stop();
var bar:MovieClip = new MovieClip();
bar.graphics.beginFill(0xCC0000,1);
bar.graphics.drawRect( 0,0,100,10);
bar.x = stage.stageWidth/2-50;
bar.y = stage.stageHeight/2-10;
bar.graphics.endFill();
stage.addChild(bar);
var barMask:MovieClip = new MovieClip();
barMask.graphics.beginFill(0xFE6FF7,0.9);
barMask.graphics.drawRect( 0,0,100,10);
barMask.x=bar.x;
barMask.y=bar.y;
barMask.graphics.endFill();
stage.addChild(barMask);
bar.mask = barMask;
this.loaderInfo.addEventListener(ProgressEvent.PROGRESS,
checkingProgress);
loaderInfo.addEventListener(Event.COMPLETE,progressComplete);
function checkingProgress(event:ProgressEvent):void{
var procentLoaded:Number = event.bytesLoaded/event.bytesTotal*100;
barMask.scaleX = procentLoaded/100;
}
function progressComplete (e:Event):void{
loaderInfo.removeEventListener(ProgressEvent.PROGRESS,
checkingProgress);
stage.removeChild(bar);
stage.removeChild(barMask);
gotoAndPlay(2);
}



3 comentários:
Muito Obrigado
Seu código é muito bom.
Rapaz, dessa vez tenho que comentar.
VALEU PELO SCRIPT!
passei por vários sites, cada um com uma papagaiada maior que a outra... Esse code, por usar só AS, é bem mais útil.
Vlw.
Simples e funcional!
Postar um comentário