Jump to content


Photo

Parametros No Flash


  • Faça o login para participar
13 replies to this topic

#1 wmonline

wmonline

    Webmaster

  • Admin Geral
  • 238 posts
  • Sexo:Masculino

Posted 29/07/2003, 13:39

Olá amigos !

Bom, estou com uma GRANDE dúvida, espero que vocês possam me ajudar.

Quero fazer uma apresentação em Flash que receba parametros externos, por exemplo no código abaixo, que está inserido dentro de uma página HTML :

....
<embed src="flash.swf?nome=Leandro&cor=FFFFFF" quality="high" .....></embed>
....

Assim a minha apresentação "flash.swf", pegará o parametro NOME e exibirá no centro da tela. Pegará a COR e preencherá a cor do fundo. Na medida que eu for mudando estes parametros a apresentação quando exibida também é alterada. Ou seja, fazer uma apresentação para vários tipos de textos e cores (obtidos através destes parametros externos).


Fico grato pela sua contribuição. Se poder detalhar o máximo, ou criar um simples exemplo (.fla), ficaria muito agradecido, visto que sou leigo em Flash.

#2 Thyago Mendes

Thyago Mendes

    ActionScript

  • Usuários
  • 161 posts
  • Sexo:Não informado
  • Localidade:Recife - PE

Posted 29/07/2003, 16:28

Use assim:
<PARAM NAME=movie VALUE="flash.swf?nome=Leandro&cor=0xFFFFFF" > 
No flash vc vai ter as variáveis "nome" e "cor" no _root, então ficaria assim:
tTexto.text = nome
var suaCor = new Color(fundo)
suaCor.setRGB(cor)
onde "tTexto" é o seu campo de texto dinâmico e fundo é o seu MovieClip do tamanho do background

qualquer dúvida poste novamente

#3 Sheepman

Sheepman

    Veterano

  • Usuários
  • 1497 posts
  • Sexo:Masculino
  • Localidade:Porto Alegre - RS

Posted 29/07/2003, 16:50

Legal... mas da tag EMBED não tem como pegar as variáveis?

Olha Leandro, fiz o exemplo de acordo com a explicação do Thyago!

At's

Attached Files


Mozart Petter - http://www.mozartpetter.com/
Não sabe o que é herança? clique aqui e descubra.

#4 wmonline

wmonline

    Webmaster

  • Admin Geral
  • 238 posts
  • Sexo:Masculino

Posted 29/07/2003, 18:06

HAA !

Muitooo obrigado ao Thyago Mendes e ao Sheepman !
Foi de extrema ajuda.... não sabe como foi importante isso, hehehe

Muito grato, mesmo.

Agora esperem, pois novidades estão vindo por ae... hehehe

#5 Thyago Mendes

Thyago Mendes

    ActionScript

  • Usuários
  • 161 posts
  • Sexo:Não informado
  • Localidade:Recife - PE

Posted 29/07/2003, 19:27

Legal... mas da tag EMBED não tem como pegar as variáveis?

pode sim, mas acredito que vai ficar um pouco mas complicado, outra opção é utilizar FlashVars veja um exemplo:
<PARAM name="FlashVars" VALUE="nome=Leandro&cor=0xFFFFFF">
no flash ficaria assim:
tTexto.text = nome
var suaCor = new Color(fundo)
suaCor.setRGB(cor)
ou ainda utilizar um JavaScript utilizando setVariable e no flash usando o método watch pra ficar "vijiando" a variável

#6 Sheepman

Sheepman

    Veterano

  • Usuários
  • 1497 posts
  • Sexo:Masculino
  • Localidade:Porto Alegre - RS

Posted 29/07/2003, 19:31

Legal... mais umas coisinhas q eu aprendo! hehe! valeu!

At's
Mozart Petter - http://www.mozartpetter.com/
Não sabe o que é herança? clique aqui e descubra.

#7 wmonline

wmonline

    Webmaster

  • Admin Geral
  • 238 posts
  • Sexo:Masculino

Posted 29/07/2003, 21:42

Vivendo e aprendendo ! : )

Bom, surgiu um problema aqui. Tudo funcionou, mas quando o texto é substituido ele não fica com uma boa definição. Fica tudo quadradinho, perdendo assim a resolução da font. (no exemplo do Sheepman)

Tem alguma idéia ?

#8 Thyago Mendes

Thyago Mendes

    ActionScript

  • Usuários
  • 161 posts
  • Sexo:Não informado
  • Localidade:Recife - PE

Posted 29/07/2003, 21:44

continuando o assunto.... acho importante mostrar isso, principalmente para se interagir Flash com outras tecnológias (VB, Delphi, etc...)
será um pequeno exemplo utlizando o método "watch" para vigiar varíáveis e poder fazer uma interação maior.

primeiro no html (poderia ser outra tecnologia)
<!-- Criamos uma função JavaScript que será responsável por passar os valores -->
<script> 
  function suaFuncao(argumento){ 
    <!-- "_root.seuObj" é objeto vigiado no flash, e argumento será uma sequencia de caracteres com os valores e seuID é o identificador do nosso objeto (flash) -->
    seuID.setVariable( "_root.seuObj" , argumento);
  } 
</script>
.....
<!-- fazemos a chamada da função passando como parametro um nome e um hexadecimal de uma cor, perceba que usei ";" para separar os valores -->
<body  onload="suaFuncao('Thyago Mendes;0x000000')">
<!-- Identificador do nosso Objeto -->
<OBJECT id="seuID"

Agora no flash
var suaCor = new Color(fundo);
//Criamos nosso objeto que vai ser vigiado
var seuObj = {}
//Primeiro parametro é o objeto a ser vigiado, o segundo é uma funcao de resposta que tratarar os valores recebidos
watch("seuObj", function (obj, antigo, novo) {
  //dividimos a sequência de caracterer em valores para o array usando o ";" como separador
  var arValor = novo.split(";");
  campo.text = arValor[0];
  suaCor.setRGB(arValor[1]);
});

Para ver funcionando pegue esse arquivo:

Attached Files



#9 Thyago Mendes

Thyago Mendes

    ActionScript

  • Usuários
  • 161 posts
  • Sexo:Não informado
  • Localidade:Recife - PE

Posted 29/07/2003, 21:47

Vivendo e aprendendo ! : )

Bom, surgiu um problema aqui. Tudo funcionou, mas quando o texto é substituido ele não fica com uma boa definição. Fica tudo quadradinho, perdendo assim a resolução da font. (no exemplo do Sheepman)

Tem alguma idéia ?

coloque isso no primeiro frame
System.UseCodePage=true

isso acontece com alguns caracteres especiais.... o flash use padrão unicode

#10 wmonline

wmonline

    Webmaster

  • Admin Geral
  • 238 posts
  • Sexo:Masculino

Posted 29/07/2003, 21:53

isso acontece com alguns caracteres especiais.... o flash use padrão unicode

Thyago,

Não que os caracteres mudem, mas deixam a font "quebradiça" (crisp mode, no fireworks, por exemplo). Eu digo em deixar os poligonos arredondado.

Dai, nao eh erro do padrão. E sim da resolução da font, imagem, objeto, seja lah o que for aplicado.

#11 Thyago Mendes

Thyago Mendes

    ActionScript

  • Usuários
  • 161 posts
  • Sexo:Não informado
  • Localidade:Recife - PE

Posted 29/07/2003, 22:03

isso acontece com alguns caracteres especiais.... o flash use padrão unicode

Thyago,

Não que os caracteres mudem, mas deixam a font "quebradiça" (crisp mode, no fireworks, por exemplo). Eu digo em deixar os poligonos arredondado.

Dai, nao eh erro do padrão. E sim da resolução da font, imagem, objeto, seja lah o que for aplicado.

isso pode ser a fonte utilizada.... redimensionamento, tamanho, enfim depende de algumas coisas, dê preferência a utilizar as device fonts.

caso tenha alguma dúvida disponibilize um exemplo para ser visto

#12 wmonline

wmonline

    Webmaster

  • Admin Geral
  • 238 posts
  • Sexo:Masculino

Posted 29/07/2003, 22:22

Thyago,

Estive vendo aqui, e para que a font fique "arredondada" ela teria que ser um "static text" e não um "dynamic text". E alterando tal opção, não alterará utilzando os parametros, pois agora é um texto estático.

Haveria alguma outra forma, de deixá-la com boa resolução, porém dinâmica ?

Jah fiz os testes com várias font e todas apresentaram a mesma irregularidade.

#13 Thyago Mendes

Thyago Mendes

    ActionScript

  • Usuários
  • 161 posts
  • Sexo:Não informado
  • Localidade:Recife - PE

Posted 29/07/2003, 22:27

Haveria alguma outra forma, de deixá-la com boa resolução, porém dinâmica ?

Sim. vc pode adcionar os caracteres ao seu pojeto.... selecione o campo de texto, va no painel propeties/Character e marca all Characters

Obs: isso vai influenciar no tamanho final do arquivo

#14 wmonline

wmonline

    Webmaster

  • Admin Geral
  • 238 posts
  • Sexo:Masculino

Posted 29/07/2003, 22:29

Ótimo !
Obtive sucesso...

Novamente , muito grato Thyago. Foi de grande apoio e atenção.




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq