Local Connection – Como criar uma conexão local entre swfs separados em janelas diferentes

Publicado por Gustavo em 22/02/2004

Como usar o LocalConnection para controlar swfs em janelas diferentes:

Vamos conhecer uma ferramente interessante do Flash MX, que poucos

usam e outros até nem sabem que ela existe, vamos aprender a controlar

um swf através de outro swf, separados por janelas diferentes (frames

ou popup).

Loucura?Não isso é possível mesmo, vamos

trabalhar um pouco e criar um swf com 6 botões, sendo que cada um desses

botões controlarão um outro swf, pra ir para um frame determinado,

ou seja, eu clico num swf e ele executa a ação no outro, piração

né?Pois é, vamos lá:

Crie um arquivo novo no flash com o nome de emissor, esse será

o swf com os botões, então vamos criar 6 botões nesse swf

e colocar o noem de instancia pro primeiro botão de “bot1″

sem aspas, e pro segundo botão colocaremos “bot2″ e assim sucessivamente

até o botão 6 como “bot6″.

Depois de criado e instanciado os 6 botões, vamos criar

uma ação para se conectar com o outro swf, então abram

o painel de ações do frame e coloquem a seguinte ação:

var filme1 = new LocalConnection(); // cria uma variavel

com nome “filme1″ que será uma nova conexão local

bot1.onRelease = function() { // ao soltar o botão “bot1″

filme1.send(”suaConexao”, “acao”, “1″); // o filme1

vai mandar uma ação para “suaConexao” definindo a ação

e o parametro, que nesse caso é o frame que va mandar

};

bot2.onRelease = function() { // mesma ação acima só que

para o botão 2 e assim por diante até o botão 6

filme1.send(”suaConexao”, “acao”, “2″);

};

bot3.onRelease = function() {

filme1.send(”suaConexao”, “acao”, “3″);

};

bot4.onRelease = function() {

filme1.send(”suaConexao”, “acao”, “4″);

};

bot5.onRelease = function() {

filme1.send(”suaConexao”, “acao”, “5″);

};

bot6.onRelease = function() {

filme1.send(”suaConexao”, “acao”, “6″);

};

Feito isso, vamos salvar esse fla, e vamos criar outro com o

nome de receptor, que é o swf que irá receber as ações,

então vamos criar um novo fla com 6 frames, a lógica então

é pelo outro swf que criamos, controlar esse por frames ou janelas separadas,

então vamos fazer o botão um fazer esse frame ir para o frame

1, o botão dois do outro swf, fazer esse swf ir para o frame dois e assim

por diante, então vamos criar 6 frames diferentes, eu fiz um mais simples

apenas mudando os nomes dos frames, então depois de feito os 6 frames,

vamos colocar essa ação no primeiro frame:

var filme2 = new LocalConnection(); // Cria a variavel

“filme2″ como uma nova conexão local

filme2.connect(”suaConexao”); // vai conectar o filme2 com “suaConexao”

que foi criada no filme1

filme2.acao = function(frame) { // criou a açao que é uma função

com 1 parametro “frame”

gotoAndStop(frame); // define a ação como gotoAndStop e o parametro

será o numero do frame

};

stop();// apenas uma ação para o filme não ir para os outros

5 frames

Então acima concluímos nossas ações,

vamos agora ver o resultado nessa página, notem como são swfs

diferentes e independentes e como o swf decima controla o de baixo, o mesmo

acontecería se estivessem em frames diferentes ou até mesmo em

janelas popups diferentes.

Filme Emissor:

Filme Receptor:

Então acima vocês aprenderam como fazer dois filmes

se comunicarem, isso é muito útil para quem trabalha com frames,

ou popups, é mais um recurso poderoso do Flash MX.

Até a próxima !!!

Gustavo Henrique Carneirinho


Assine o nosso Feed
1.281 assinantes,
assine você também!
Publique esse artigo no Twitter Salve este artigo no Delicious Cadastre esse artigo no Dihitt Cadastre esse artigo no UEBA Cadastre esse artigo no Rec6

Gustavo

Nenhum usuário comentou em " Local Connection – Como criar uma conexão local entre swfs separados em janelas diferentes "

Assine o Feed de Comtentários ou URL de Trackback

Deixe o seu comentário abaixo...

 Username (*required)

 Email Address (*private)

 Website (*optional)

 

MXStudio © 2003-2010. Todos os direitos reservados.
É expressamente proibido a cópia, reprodução e difusão dos textos, fotos e outros elementos contidos neste site sem autorização expressa do MXStudio.