Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

harkonen

Resize

Recommended Posts

Boas pessoal,

 

eu tenho este código que faz com que aconteça o resise do flash no html mas só acontece se mudar o tamanho da janela manualmente.

 

Quem estiver a ver por ex.: em 800x600 o flash aparece meio cortado só quando o utilizador clica no butão da janela de "restore", o flash faz o resize.

 

stageObj={w:900,h:700};stageObj.onResize=function(){	var maxRatio=Math.min(Stage.width/this.w,Stage.height/this.h);	if(maxRatio<1){		_level0._xscale=maxRatio*100;		_level10._xscale=maxRatio*100;		_level0._yscale=maxRatio*100;		_level10._yscale=maxRatio*100;		_level0._x=(this.w*(1-maxRatio))>>1;		_level10._x=(this.w*(1-maxRatio))>>1;		_level0._y=(this.h*(1-maxRatio))>>1;		_level10._y=(this.h*(1-maxRatio))>>1;	}else{		_level0._xscale=_level0._yscale=100;		_level10._xscale=_level10._yscale=100;		_level0._x=_level0._y=0;		_level10._x=_level10._y=0;	}}Stage.scaleMode="noScale";Stage.addListener(stageObj);

 

Tem como dentro deste código colocar para ele mudar logo dependendo da resolução.?

 

um abraço,

Compartilhar este post


Link para o post
Compartilhar em outros sites

stageObj={w:900,h:700};stageObj.onResize=ajustarStage;function ajustarStage (){	var maxRatio=Math.min(Stage.width/this.w,Stage.height/this.h);	if(maxRatio<1){		_level0._xscale=maxRatio*100;		_level10._xscale=maxRatio*100;		_level0._yscale=maxRatio*100;		_level10._yscale=maxRatio*100;		_level0._x=(this.w*(1-maxRatio))>>1;		_level10._x=(this.w*(1-maxRatio))>>1;		_level0._y=(this.h*(1-maxRatio))>>1;		_level10._y=(this.h*(1-maxRatio))>>1;	}else{		_level0._xscale=_level0._yscale=100;		_level10._xscale=_level10._yscale=100;		_level0._x=_level0._y=0;		_level10._x=_level10._y=0;	}}Stage.scaleMode="noScale";Stage.addListener(stageObj);ajustarStage();

Abraço http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

oi,dá para explicar o código?eu coloquei e não funcionou. Eu abro o IE e arrasto a janela para metade do tamanho simulando um 800x600 (eu tou em 1280x1024). Aí eu abro o html e ele ta a sair fora da janela, e só quando eu aumento ou diminuo o tamanho da janela do IE, é que acontece o resise do flash.Eu queria que acontecesse logo, a pensar naqueles com resolução mais pequenas.abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu só "desmanchei" o seu código. A função que era diretamente atribuida ao onResize eu coloquei um nome:

 

function ajustarStage (){

/...

}

 

E chamei essa função quando acontece o onResize:

 

stageObj.onResize=ajustarStage;

 

No final do código eu chamei a função diretamente, para que ela seja executada logo que o flash abrir e executar esse script.

 

ajustarStage();

 

Flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu só "desmanchei" o seu código. A função que era diretamente atribuida ao onResize eu coloquei um nome:

 

function ajustarStage (){

/...

}

 

E chamei essa função quando acontece o onResize:

 

stageObj.onResize=ajustarStage;

 

No final do código eu chamei a função diretamente, para que ela seja executada logo que o flash abrir e executar esse script.

 

ajustarStage();

 

Flw

mas não funcionou de qualquer maneira.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah, agora que vi:

 

stageObj={w:900,h:700};stageObj.onResize=ajustarStage;function ajustarStage (){	var maxRatio=Math.min(Stage.width/stageObj.w,Stage.height/stageObj.h);	if(maxRatio<1){		_level0._xscale=maxRatio*100;		_level10._xscale=maxRatio*100;		_level0._yscale=maxRatio*100;		_level10._yscale=maxRatio*100;		_level0._x=(stageObj.w*(1-maxRatio))>>1;		_level10._x=(stageObj.w*(1-maxRatio))>>1;		_level0._y=(stageObj.h*(1-maxRatio))>>1;		_level10._y=(stageObj.h*(1-maxRatio))>>1;	}else{		_level0._xscale=_level0._yscale=100;		_level10._xscale=_level10._yscale=100;		_level0._x=_level0._y=0;		_level10._x=_level10._y=0;	}}Stage.scaleMode="noScale";Stage.addListener(stageObj);ajustarStage();

Flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema é que no primeiro ele dizia:_level0._x=(this.w*(1-maxRatio))>>1;E eu troquei os "this" para o nome direto do objeto:_level0._x=(stageObj.w*(1-maxRatio))>>1;Isso em todos as linhas.Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.