FÁBIO DUARTE (79 pts)

BÁRBARA TOSTES (64 pts)

ÉMERSON ROCHA (85 pts)

AUTOR DESCONHECIDO (100 pts)

RÔMULO NUNES (32 pts)

DAUTON JANOTA (255 pts)

LEANDRO AMANO (83 pts)

LUI FERNANDO (151 pts)

GÉRIO (93 pts)

GUILHERME G.G. (137 pts)

RODRIGO AMARAL (56 pts)

NETO LEAL (116 pts)
Treinamento PontoFlash de Flash e ActionScript

Porque os botões em um Movie Clip não estão funcionando para outra cena?

Com eu faço para chamar um script em PHP, usando flash4, passando para e este uma variável digitada num form?

Eu tenho uma variável na qual o usuario irá por o valor! Quando ele apertar calcular, o valor tem que ser de + 40% x 2! Algo do tipo: variavel+40%*2.

É possível usar meta tags para evitar que os SWF vão para o cache?

Alguém ai pode me dizer o que é esse tal de "prototype"?

Tem como especificar o tempo transcorrido de um movieclip?

Como fazer para que meu flash aberto com Load Movie tenha fundo transparente.

Como faço para bloquear a cópia de figuras do meu site.

Como carregar clipes aleatórios?

Estou precisando contolar o volume de uma trilha sonora em loop em um site.

Caso em que numa função setInterval, o clearInterval não funciona.

Como fazer com que a rotação de um ponteiro demore 10 segundos?

Como abrir uma janela pop-up tamanho fullscreen?

Como faço pra chamar uma página HTML dentro de um quadro no flash?
Flash MX 2004 - class e prototype

Controle de som no Flash 5.

Limitar por IP? Porque não utilizar o Shared Object do Flash?

Máscara arrastável no Flash 4.

Colisão

Menu arrastável, estilo Windows.

Uso da tecla tab num formulário Flash.

Local Shared Objects segunda parte.

Menu dinâmico a partir de um xml.

Botões estilo Apple.com feito no PhotoShop

Macromedia Flex

Grandene - Avaliação e sites
Multiple text efects

Imã

Digit light

Liga e desliga MX

Break_text

Texto esticado

Movimento

Direção do mouse

Twang

The Vars

Raysoflight 2

Esferas conectadas
HOME | TUTORIAIS
Aprendendo a interagir Flash e ASP
por Marcelo Frias

Olá, leitor. Antes de qualquer ensino, gostaria de deixar claro que este tutorial se destina àqueles que já possuam certo grau de conhecimento em programação das Active Server Pages e que, além disso, conheçam ao menos o básico sobre a utilização do Macromedia Flash 5 e seu ActionScript.

   Bom, com tais considerações expostas, iniciemos nosso aprendizado.

Active Server Pages

Para "refrescar" (lembrando o objetivo deste tutor) a memória daqueles que não têm utilizado tão freqüentemente este ambiente, farei uma breve introdução sobre o que é, para que serve e como se aplica funcionalmente as ASP.

ASP - Active Server Pages ®
CRIADOR - Microsoft ®

 - O que é?

AS ASP nada mais são do que páginas dinâmicas executadas pelo servidor em que estão hospedadas. E o que isto significa? Vejamos:

   Todos nós que temos um mínimo de conhecimento sobre Internet sabemos que as páginas exibidas em nosso navegador são majoritariamente criadas com HTML, isto é, Hyper Text Markup Language, composta por diversos pares ("tags"). Sabemos também que só é exibido no navegador do usuário aquilo que foi criado pelo desenvolvedor no exato momento do desenvolvimento da página. Compliquei? Então vamos a um exemplo:

<html>
<head>
<title>Exemplo</title>
</head>
<body bgcolor="#888888">
<center>
<font color="#FFFFFF">Olá mundo!</font>
</center>
</body>
</html>


Quando usamos este código para criar uma página HTML, estamos exibindo-a exatamente como a criamos. Veja abaixo:

Isso você já sabia (espero), mas e se eu quisesse que às 0:00h de cada dia exibisse este código:

<html>
<head>
<title>Exemplo</title>
</head>

<body bgcolor="#888888">

<center>
<font color="#FFFFFF">Está tarde, não é?</font>
</center>

</body>
</html>


   Veja a imagem logo abaixo:

E aí? Como eu deveria proceder? Pois aí entra o conceito de página dinâmica! Uma página que interage sem que tenha de ser "re-criada" por ninguém! Abaixo, veja um exemplo de como resolver nossa questão:

<%@ Language="VBScript" %>
<% Option Explicit %>

<%
Dim HoraAtual
HoraAtual = Time

If HoraAtual = "00:00:00" then
%>
<html>
<head>
<title>Exemplo</title>
</head>

<body bgcolor="#888888">

<center>
<font color="#FFFFFF">Está tarde, não é?</font>
</center>

</body>
</html>

<% Else %>

<html>
<head>
<title>Exemplo</title>
</head>

<body bgcolor="#888888">

<center>
<font color="#FFFFFF">Olá, mundo!</font>
</center>

</body>
</html>

<% End If %>


   E então? Lembrou tudo? Ótimo, pois agora chegamos aonde realmente nos interessa: a interação entre FLASH e ASP.

FLASH x ASP:

A comunicação entre Flash e ASP é feita única e exclusivamente através da passagem de variáveis de um lado para o outro. Para tanto, é necessário mostrar em primeira instância, como o Flash recebe variáveis oriundas das páginas ASP.


 - Recebendo variáveis pelo Flash:

O Flash recebe variáveis através de, principalmente, 2 funções:

a) loadVariables ("seuArquivo", "destino", "método");
b) loadVariablesNum ("seuArquivo", "nívelDestino", "método");

   A primeira delas carrega variáveis em um nível ou em um MovieClip especificado no parâmetro "destino", ao passo que a segunda carrega apenas em um nível específico. Por exemplo:

LoadVariables ("arquivo.txt", "_root"); // Carrega no "_root"
LoadVariablesNum ("arquivo.txt", 0); // Carrega no "_level0"
LoadVariables ("arquivo.txt", "_root.mc1"); // Carrega no "mc1"

   
   Entretanto, para receber as variáveis de um arquivo, este deve respeitar algumas regras básicas:

a) Cada variável deve ser separada de seu valor por um sinal de igual ("="), sem espaços, como em: nome=Marcelo Frias ;

b) Cada par de variável/valor deve ser separado pelo símbolo "&", como em: nome=Marcelo Frias&idade=19;

c) A expressão de variáveis deve começar com o símbolo "&" e terminar também com o símbolo "&", como em: &nome=Marcelo Frias&idade=19&.

   Assim, para o "arquivo.txt" que chamamos pela nossa função, seu conteúdo deve ser este:

&nome=Marcelo Frias&idade=19&
-----------------------------------------
primeira variável | segunda variável

   O Flash receberia tais variáveis nesta sintaxe:

nome = "Marcelo Frias";
idade = "19";

OBS.: TODAS as variáveis recebidas no Flash são do tipo STRING.


  - Recebendo variáveis do Flash pelo ASP:

Como já é de nosso conhecimento, existem dois métodos para o envio de informações (variáveis): GET e POST. O primeiro passa variáveis através da URL, como em: http://www.dominio.com/arquivo.asp?variavel=valor.

   Já o segundo as envia através de cabeçalhos http, invisíveis ao usuário e altamente recomendável.

   Portanto, no ASP, temos também duas maneiras de receber as informações:

a) através de: Request.QueryString ("nomeVariavel") - pelo GET

b) através de: Request.Form("nomeVariavel") - pelo POST

   Sendo assim, um exemplo de arquivo ASP para receber variáveis pelo método GET seria:

<%@ Language="VBScript" %>
<% Option Explicit %>

<%
Dim minhaVariavel
minhaVariavel = Request.QueryString ("variavel")
%>

Veja como ficaria usando o método POST:

<%@ Language="VBScript" %>
<% Option Explicit %>

<%
Dim minhaVariavel
minhaVariavel = Request.Form ("variavel")
%>

   Dessa forma, se enviarmos as variáveis pelo Flash utilizando o método GET, as receberíamos no ASP como no primeiro modelo, enquanto que, se as recebêssemos pelo método POST, utilizaríamos o modelo secundário.

  - Enviando variáveis com o Flash:


Da mesma forma que usamos a função "loadVariables()" para carregar variáveis, também a usamos para envia-las. Como? Quando definimos um método a ser usado pela função (GET ou POST), estamos "avisando" ao Flash que queremos que ele envie TODAS as variáveis que estejam na linha do tempo do alvo da função "loadVariables()". Assim, por exemplo, se chamarmos a função por um botão dentro do MovieClip "carro" com o seguinte código, enviaremos TODAS as variáveis que estão na linha do tempo principal ("_root"), independente do local onde a função foi invocada. Veja:
No botão:

on (release){
   loadVariables ("arquivo.asp", "_root", "POST");
}


   Isso é muito conveniente, sabe por quê? Simples, porque desta forma eu posso chamar a função de qualquer lugar do meu filme e ter certeza que as variáveis que quero serão enviadas. Não devemos esquecer, porém, que as variáveis retornadas pelo arquivo ASP serão carregadas no destino que eu defini na função! Logo, no exemplo acima, todas as variáveis da linha do tempo principal serão enviadas ao arquivo ASP e todas as variáveis que eu definir corretamente pelo arquivo ASP (a maneira correta de fazê-lo será abordada no próximo item) serão imediatamente carregadas também na linha do tempo principal ("_root"). Agora você entendeu, certo?

Vejamos então o último item de nosso tutorial.

  - Enviando variáveis do ASP ao FLASH:


O ASP não envia qualquer variável criada dentro dele diretamente ao Flash. Ele somente envia aquelas que imprimimos na tela, isto é, apenas as variáveis que sejam impressas na página de resposta HTML. Agora você ficou perdido... Mas não se preocupe, todo começo é complicado. ;) Siga-me:

   Já é de seu conhecimento que, em ASP, quando queremos que apareça algum texto ou valor de variável em nossa página HTML, devemos utilizar o método "write" do objeto "Response", como em: Response.write "texto".

   É disso que eu falei no parágrafo primeiro deste item. Quando você quer que o Flash receba variáveis pelo ASP, tudo que você precisa fazer é usar algo como esta linha abaixo, e só:

<% Response.Write "&nome=Marcelo Frias&idade=19&" %>


   Repare que o que imprimiremos na tela é exatamente a sintaxe que expliquei que deveria ser usada para o Flash receber variáveis (vide item Recebendo variáveis pelo Flash). Nada diferente!

   Você como bom aluno, com certeza deve estar pensando: "Mas e se eu precisasse colocar valores de variáveis do ASP nesta linha de comando que é toda string? Como faria?" Nada como aprender, não é? Veja bem:

   Se a minha variável nome do exemplo acima tivesse um valor criado no processamento do ASP, ou seja, eu não pudesse escrevê-la por não conhecer seu valor, simplesmente usaria o ASP para fazê-lo para mim, desta forma, por exemplo:

<% Response.Write "&nome=" &variavelNome& "&" %>


   Assim, a maneira de contornar o problema, é utilizar as concatenações que tanto odiamos (pelo menos eu) provindas da sintaxe do ASP.

   Como você viu, não há nada de complicado nisso tudo e essa é a parte mais interessante! Imagine as possibilidades... até interagir com Banco de Dados já ficou fácil! Nada que um pouco de programação em ASP não resolva. ;)

   Para fixar todos os conceitos passados (e olha que não foram poucos), vamos acompanhar um exemplo passo-a-passo de interação entre ASP e FLASH.

A prática, a perfeição

Não só de teorias vive o homem, portanto, mãos na massa!

   Vamos criar um filme em que o usuário insere em um campo de texto o seu nome, clica no botão "enviar" e recebe um cumprimento nominal do próprio filme. (poderíamos fazer tal tarefa apenas usando ActionScript, mas fugiríamos do ideal deste tutorial).

ARQUIVO FLASH:

a) Crie um filme em branco e salve-o com o nome "interacao";

b) Crie uma segunda camada com o nome de "Campos" e nomeie a primeira como "Actions";

c) Na camada "Campos", insira 2 campos: o primeiro do tipo entrada e o segundo do tipo dinâmico;

entrada (com borda)

dinâmico (sem borda)

d) Na camada "Actions" coloque o seguinte:

stop();

e) Crie um botão simples e coloque-o embaixo de ambos os campos;

f) Coloque estes comandos no seu botão:

on (release){
   loadVariables("processamento.asp", "_root", "POST");

g) Publique seu filme com HTML e FLASH;

ARQUIVO ASP:

a) Abra seu bloco de notas;

b) Insira este código nele:

<%@ Language="VBScript" %>
<% Option Explicit %>

<% Dim strNome
strNome = Request.Form ("nome")

Response.Write "&status=Olá, " &strNome& "&"
%>

c) Salve este arquivo como "processamento.asp" no mesmo diretório onde salvou seu filme "interação";

Agora que está tudo pronto, que tal testarmos? Vá na pasta onde se encontra seu filme e execute-o!

OBS.: Para que tudo funcione corretamente, tanto seu arquivo "interacao.swf", "interacao.html" e "processamento.asp" devem estar situados em um servidor que suporte ASP!

- EXPLICANDO OS PROCEDIMENTOS:

   Bem, de tudo que foi falado para ser feito neste exemplo, pouca coisa precisa ser explicada, mas vamos lá.

   Você criou um novo filme com 2 campos: entrada e dinâmico. O campo de entrada leva o nome de variável "nome", enquanto que o dinâmico "status". No botão, colocamos a action que faz o carregamento e envio de variáveis, definindo o destino delas na linha do tempo principal. Quando o usuário digita seu nome no campo de entrada e aperta o botão, o Flash se comunica com o servidor e "pede" que execute a página "processamento.asp". Esta, finalmente, retorna um valor para a variável "status". Repare que este nome de variável combina com o de nosso campo dinâmico. É assim que garantimos a exibição da variável que vem do ASP em nosso campo invisível (por não ter bordas, lembra?).

Baixe aqui os arquivos desse tutorial



Devido à reformulação implementada no site, pode ser que você encontre alguns links quebrados. Por favor, ajude-nos a corrigir eventuais problemas nos informando links quebrados
0 comentário