Ir para conteúdo

POWERED BY:

Arquivado

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

Ronaldo Marcos

Problemas com objetos fora do stage em Flash em 100% no Browser

Recommended Posts

Estou tentando colocar o site www.100propaganda.com.br, 100% no browser. Se abro em monitores pequenos fica beleza, desde que não sejam "quadrados", em tamanhos parecidos mas em wide também estão ok. Em monitores grandes os objetos que estão fora do stage também são considerados é ai que está o problema. Eu tentei colocar o conteúdo desses movie clips que aparecem um frame pra frente deixando o primeiro vazio, mas não fez diferença fica do mesmo jeito.

 

Já consultei vários sites e fóruns, usando como código aí abaixo, usando javascript pra dimensionar, mas nada adiantou. Tentei também usar "nostage" pra ver se ele não tentava redimensionar o conteúdo e deixar igual mas não era o caso.

 

Teve um maluco ai que num vídeo noutro forum garantiu que colocando o mesmo tamanho do flash la no "publish setting" ele ignora o resto de fora, ele disse isso 500 vezes no vídeo, eu não acreditei, mas fui lá e testei... deu na mesma.

 

Estou usando Flash CS3 e os players 9 e 10. Obrigado.

 

 

<script language="javascript">
	if (AC_FL_RunContent == 0) {
		alert("This page requires AC_RunActiveContent.js.");
	} else {
		AC_FL_RunContent(
			'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
			'width', '100%',
			'height', '100%',
			'src', 'Layout011',
			'quality', 'high',
			'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
			'play', 'true',
			'loop', 'true',
			'scale', 'showall',
			'wmode', 'transparent',
			'devicefont', 'false',
			'id', 'Layout011',
			'bgcolor', '#00ccff',
			'name', 'Layout011',
			'menu', 'true',
			'allowFullScreen', 'false',
			'allowScriptAccess','sameDomain',
			'movie', 'Layout011',
			'salign', ''
			); //end AC code
	}
</script>

<noscript>
	<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="100%" height="100%" id="Layout011" align="middle">
	<param name="allowScriptAccess" value="sameDomain" />
	<param name="allowFullScreen" value="false" />
	<param name="wmode" value="transparent">
	<param name="movie" value="Layout011.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#00ccff" />	<embed wmode="transparent" src="Layout011.swf" quality="high" bgcolor="#00ccff" width="100%" height="100%" name="Layout011" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
	</object>
</noscript>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma imagem do que acontece pra quem não tem um monitor parecido com o qual eu disse. As resoluções variam, ja vi monitores de tamanhos diferentes, mas usando a mesma resolução, apresentarem e outros não o problema.

Imagem Postada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ué rapaz, isso ai é simples.

O lance dos objetos estarem aparecendo é porque o monitor é grande de mais, e você os colocou fora do stage, que é pequeno.

Você tem algumas formas para arrumar, pode aumentar o tamanho do stage e colocar os objetos mais longe ainda, o que eu não recomendo, ou usar um alpha neles, daí quando clicar no botão parar 'acionar' os objetos tira o alpha.

Esta tudo em um .swf só?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não vou tentar esclarecer o porque do problema, mas vou dar alguns pitacos para tentar minimizar, muito parecido com o do colega Marco...

 

Deixe os objetos na biblioteca (library) e não no palco (stage), e chame (attachMovie) quando necessário, ou...

Deixe invisível os objetos e visível quando chamados...

 

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, entendi as duas formas que falaram, mas usar alpha seria algo que traria menos resultado do que colocar os objetos que aparecem acima no segundo frame de seus mc´s, assim eles nem existiriam até ali. Mas não resolveu... E aumentar o stage poderia ser uma alternativa, pois, nos monitores comuns ficaria um espaço muito grande em cima. Estou dizendo pq as duas coisas eu fiz, a primeria pra tentar resolver o problema e a segunda apenas pra tentar entender o motivo.

 

Eu li sobre alguns problemas de usar 100% no flash na versão 9. Não sei se é o caso, mas ele ainda pode existir, pois nunca tinha ocorrido coisa parecida com outros. Obrigado.

 

Vou tentar como disse o Public2004, assim pelo menos ele nao vai considerar os objetos la em cima se ficar na library mesmo.

 

Alias, ele aparece parte dos objetos em cima. Tentei nas primeiras vezes apenas leva-los mais pra cima e ai ele diminui até aparecer ainda um pedaço deles, não inteiro, mas aqueles pedacinhos... Se ainda pegasse os objetos inteiros teria alguma lógica.

 

Vou deixá-los na biblioteca então pra ver o que dá. Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi!!

Você deveria deixar na tela somente o MC ativo, o restante na biblioteca. Quando clicar em algum botão aí você chama o MC correspondente e remove o atual e a mesma lógica para todos os outros MCs...

Para inserir um MC da biblioteca corretamente linkado: "attachMovie"

Para remover um MC inserido através do método acima: "removeMovieClip"

 

Poderia fazer também com swfs separados (loadMovie ou MovieClipLoader). Ou efetuar a animação dos MCs subindo por AS e definir uma posição bem negativa em relação ao "stage".

 

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, apaguei tudo do stage, fiz o linkage e chamei só na hora que precisava usar, mas logo no abrir ele já dimensiona com tamanho diferente, mesmo sem nada carregado ainda.

 

Observando isso agora, eu percebi que ele parece fazer uma espécie de cálculo entre largura e altura do monitor, digo do monitor, pois ja tentei em computadores com resoluções iguais mas com monitores em formatos diferentes e os resultados são muito diferentes. Alguns monitores grandes aparece o problema, outros não, quase sempre nos grandes em widescreen e configurados com a resolução de acordo (digo "de acordo" pois ainda tem gente que compra monitores de 22 polegados, por exemplo, e usa resolução 800x600, rs).

 

Exemplo: nos meus de 17" wide notebook perfeitos, em outros computadores de 17" quadrados (esses modelos esquisitos que tao saindo agora) ficam ruins.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já ouviu falar em layout líquido no Flash?

 

Não usa Java Script, é direto no Action.

 

Em AS3 fica algo assim (só para começar), permite que o layout se redimensione de acordo com a resolução do usuário:

 

//propriedades do palco
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
			
//Listener que cuida o evento de RESIZE
stage.addEventListener(Event.RESIZE, redimensiona);

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.