JOTA LAGO (40 pts)

IRAPUAN MARTINEZ (45 pts)

RICARDO TEIXEIRA (40 pts)

JONAS GALVEZ (521 pts)

ZEBEDIAH (35 pts)

MAURO ROCHA TAVARES (40 pts)

PEDRO CLAUDIO (50 pts)

HELEN TRIOLO (444 pts)

LEANDRO AMANO (83 pts)

DEMIS BUCCI (50 pts)

RÔMULO NUNES (32 pts)

GABRIEL SPORCH (53 pts)
Treinamento PontoFlash de Flash e ActionScript

Um preload (carregador) para carregar swf, jpg, mp3, txt, asp, php e xml.

Como eu faço para abrir um site em fullscreen?

Como imprimir no Flash?

Como simular, com sharedObjects, um cookie e guardar o frame no qual o usuário estava quando saiu do filme?

Como faço para validar data de nascimento num formulário?

Como fazer a timeline em vez de passar o filme para frente volte o filme?

Como carregar arquivos externos (imagens, por exemplo) dentro do FlashMX?

Como colocar um Ícone na Barra de Endereços no IE?

Uso do método hitTest no Flash 5 para verificar colisão.

Como colocar elementos separados por vírgula em uma posição específica de um array?

Como mudar a cor de campos de texto no HTML?

Abrir janelas popups à pertir de imagens.

O que é e para que serve o método getBounds()?

Como validar campos num formulário flash?
Barra de rolagem simples no Flash5.

Objeto XML - importando para o Flash

Formatação Encoded e Decoded

Controle de som no Flash 5.

Utilização da class XMLConnector

Formulário de e-mail com CGI.

Mascara animada no Flash MX

Menu deslizante.

Shake - navegador tremendo.

Jogo da Forca (segunda parte)

Controlando MovieClip pelas teclas direcionais.

Unindo e separando traçados - Fireworks
Drag circling

Balão

Sashacircle 1

Multi text load

Pond

Caneta

Random blocks

Swirl

Openmask

Hitest eat

Waterfall

Mouse seleciona link
HOME | TRUQUES E DICAS
Um preloader inteligente.
por Jonas Galvez



Segue abaixo uma versão. No caso, alterei este método para que ele retorne uma variável com o valor da porcentagem.

MovieClip.prototype.setPreload = function(action, timeline) {
this.mcTotal = this.total = 0;
this.carregado = this.porcentagem = 0;
this.action = action;
if(arguments.length > 2) {
this.timeline = new Array();
for(var i = 1; i < arguments.length; i++) {
this.mcTotal += arguments[i].getBytesTotal();
this.timeline.push(arguments[i]);
}
} else {
this.mcTotal = timeline.getBytesTotal();
this.timeline = timeline;
}
this._xscale = 0;
this._visible = true;
this.preloading = true;
this.finishPreload = function() {
this.total = this.carregado = this.porcentagem = 0;
this._xscale = 0;
this._visible = this.preloading = false;
this.action();
return this.porcentagem;
}
}
MovieClip.prototype.doPreload = function() {
if(this.preloading) {
if(typeof(this.timeline) == "object") { // o erro estava nesta linha
for(var j = 0; j < this.timeline.length; j++) {
this.total += this.timeline[j].getBytesTotal();
this.carregado += this.timeline[j].getBytesLoaded();
}
} else {
this.total = this.timeline.getBytesTotal();
this.carregado = this.timeline.getBytesLoaded();
}
if(this.total != this.mcTotal) {
this.porcentagem = Math.round(this.carregado*100/this.total);
this._xscale = this.porcentagem;
if(this.porcentagem == 100) {
return this.finishPreload();
}
return this.porcentagem;
}
}
}

Altere o script do movieclip preloader para o seguinte:

onClipEvent(load) {
_visible = false;
}
onClipEvent(enterFrame) {
_root.NOME_DO_CAMPO_DE_TEXTO = this.doPreload();
}

Jonas Galvez

0 comentário