Alguém poderia ajudar um novato?
Estou tendo um sério problema (rs) em fazer o código abaixo funcionar... O problema está no eval("quadro"+i).onRelease = function() {...
Como devo me referenciar a um movieclip criado e nomeado via actionscript (para poder inserir ações nele, como nesse caso) ?
stop();
// declara a quantidade de imagens a serem carregadas e a posição inicial
var amntImages:Number = 5;
var ypos:Number = 0;
var xpos:Number = 200;
// loop que cria os movieclips, carrega as imagens em cada um e
//define suas posições (às quais adiciono 80 pixels a cada loop)
for (var i = 1; i<=amntImages; i++) {
// cria o listener
var ouvinte:Object = new Object();
// adiciona a ação ao listener ----------------------- AQUI ESTÁ O PROBLEMA (acho eu) ---------------------------
ouvinte.onLoadComplete = function(clipe) {
eval("quadro"+i).onRelease = function() {
// as ações entrariam aqui
};
};
// cria os movieclips e nomea-os
this.createEmptyMovieClip("quadro"+i,getNextHighestDepth());
// adiciona os listeners aos clips
eval("quadro"+i).addListener(ouvinte);
//cria um loader
var carregador:MovieClipLoader = new MovieClipLoader();
//adiciona o listener a ele
carregador.addListener(ouvinte);
//manda o loader carregar as imagens nos clips
carregador.loadClip(("lookbook/gustavo"+i+".jpg"),("quadro"+i));
//posiciona os clips
eval("quadro"+i)._y = ypos;
eval("quadro"+i)._x = xpos;
//adiciona 80 pixels ao Y
ypos += 80;
}
Publicidade
|
|
Page 1 of 1
Como criar movieclips clicáveis via ActionScript? Ajudem um novato! rs
#2
Posted 30 March 2009 - 08:36 PM
Tente assim:
Alguns comentários:
Organize melhor seu código. Tudo tem uma ordem.
Vc coloca a linha que cria o objeto MovieClipLoader dentro do for, o que quer dizer que vc criou X novos objeto MovieClipLoader.
Veja o tutorial MovieClipLoader e entenda melhor como funciona.
Bons estudos..
Até
CÓDIGO
stop();
// declara a quantidade de imagens a serem carregadas e a posição inicial
var amntImages:Number = 5;
var ypos:Number = 0;
var xpos:Number = 200;
//cria um loader
var carregador:MovieClipLoader = new MovieClipLoader();
// cria o listener
var ouvinte:Object = new Object();
//adiciona o listener a ele
carregador.addListener(ouvinte);
// loop que cria os movieclips, carrega as imagens em cada um e
//define suas posições (às quais adiciono 80 pixels a cada loop)
for (var i = 1; i<=amntImages; i++) {
// cria os movieclips e nomea-os
this.createEmptyMovieClip("quadro"+i,getNextHighestDepth());
// adiciona a ação ao listener ----------------------- AQUI ESTÁ O PROBLEMA (acho eu) ---------------------------
ouvinte.onLoadComplete = function(mc:MovieClip) {
mc.onRelease = function() {
// as ações entrariam aqui
};
};
ouvinte.onLoadInit = function(mc:MovieClip) {
mc._y = ypos;
mc._x = xpos;
};
// adiciona os listeners aos clips
//eval("quadro"+i).addListener(ouvinte); /////////Não precisa disso aqui/////////////
//posiciona os clips
/*eval("quadro"+i)._y = ypos;
eval("quadro"+i)._x = xpos;*/
//adiciona 80 pixels ao Y
ypos += 80;
}
// declara a quantidade de imagens a serem carregadas e a posição inicial
var amntImages:Number = 5;
var ypos:Number = 0;
var xpos:Number = 200;
//cria um loader
var carregador:MovieClipLoader = new MovieClipLoader();
// cria o listener
var ouvinte:Object = new Object();
//adiciona o listener a ele
carregador.addListener(ouvinte);
// loop que cria os movieclips, carrega as imagens em cada um e
//define suas posições (às quais adiciono 80 pixels a cada loop)
for (var i = 1; i<=amntImages; i++) {
// cria os movieclips e nomea-os
this.createEmptyMovieClip("quadro"+i,getNextHighestDepth());
// adiciona a ação ao listener ----------------------- AQUI ESTÁ O PROBLEMA (acho eu) ---------------------------
ouvinte.onLoadComplete = function(mc:MovieClip) {
mc.onRelease = function() {
// as ações entrariam aqui
};
};
ouvinte.onLoadInit = function(mc:MovieClip) {
mc._y = ypos;
mc._x = xpos;
};
// adiciona os listeners aos clips
//eval("quadro"+i).addListener(ouvinte); /////////Não precisa disso aqui/////////////
//posiciona os clips
/*eval("quadro"+i)._y = ypos;
eval("quadro"+i)._x = xpos;*/
//adiciona 80 pixels ao Y
ypos += 80;
}
Alguns comentários:
Organize melhor seu código. Tudo tem uma ordem.
Vc coloca a linha que cria o objeto MovieClipLoader dentro do for, o que quer dizer que vc criou X novos objeto MovieClipLoader.
Veja o tutorial MovieClipLoader e entenda melhor como funciona.
Bons estudos..
Até
#3
Posted 31 March 2009 - 07:05 PM
xavrim,
antes de tudo, MUITO obrigado pela ajuda... Como iniciante, a ajuda de aguém mais experiente é inestimável, de verdade. Valeu mesmo.
Mas, sobre o script: consegui tornar os mcs clicáveis, mas todos eles executam o mesmo código... Não consigo colocar a variável "i" com seu valor de cada loop, ela sempre tem o valor 6 (do último loop).
Mais alguma luz?
mc.onRelease = function() {
if (_root.mcframe.vmcframe == "meio") {
trace(i);
var vfotoacarregar:String = "/lookbook/"+i+".jpg";
loadMovie(vfotoacarregar,_root.mcframe.fotoezoom.mcFoto);
loadMovie(vfotoacarregar,_root.mcframe.fotoezoom.FotoG)}
else {
trace(i);
var vfotoacarregar:String = "/lookbook/"+i+".jpg";
mcframe.play()}
}
antes de tudo, MUITO obrigado pela ajuda... Como iniciante, a ajuda de aguém mais experiente é inestimável, de verdade. Valeu mesmo.
Mas, sobre o script: consegui tornar os mcs clicáveis, mas todos eles executam o mesmo código... Não consigo colocar a variável "i" com seu valor de cada loop, ela sempre tem o valor 6 (do último loop).
Mais alguma luz?
mc.onRelease = function() {
if (_root.mcframe.vmcframe == "meio") {
trace(i);
var vfotoacarregar:String = "/lookbook/"+i+".jpg";
loadMovie(vfotoacarregar,_root.mcframe.fotoezoom.mcFoto);
loadMovie(vfotoacarregar,_root.mcframe.fotoezoom.FotoG)}
else {
trace(i);
var vfotoacarregar:String = "/lookbook/"+i+".jpg";
mcframe.play()}
}
#4
Posted 02 April 2009 - 07:44 PM
Bom, o que vc está precisando é passar o valor do indice, para chamar tal imagem, certo? Então podemos fazer o seguinte.
Segue a mesma lógica
Bom cara, acho que a dica foi essa. Caso não funcione, retorne a postar.. VLW
Segue a mesma lógica
CÓDIGO
stop();
// declara a quantidade de imagens a serem carregadas e a posição inicial
var amntImages:Number = 5;
var ypos:Number = 0;
var xpos:Number = 200;
//cria um loader
var carregador:MovieClipLoader = new MovieClipLoader();
// cria o listener
var ouvinte:Object = new Object();
//adiciona o listener a ele
carregador.addListener(ouvinte);
/********
Primeira alteração. Criar uma variável para adicionar o indice
*******/
var indiceMC:Number = 0;
// loop que cria os movieclips, carrega as imagens em cada um e
//define suas posições (às quais adiciono 80 pixels a cada loop)
for (var i = 1; i<=amntImages; i++) {
// cria os movieclips e nomea-os
this.createEmptyMovieClip("quadro"+i,getNextHighestDepth());
// adiciona a ação ao listener ----------------------- AQUI ESTÁ O PROBLEMA (acho eu) ---------------------------
ouvinte.onLoadComplete = function(mc:MovieClip) {
/**********
Outra alteração é a seguinte. O MC é justamente o MC "clicavel" que vc está criando, então
***********/
mc.indice = indiceMC;
indiceMC++;
/**********
quando vc faz, objeto.nomequalquer, vc está criando uma variável dentro do objeto mc.
quando carrega a primeira imagem, o indiceMC tem valor de 0, depois que carregar outra imagem
indiceMC terá valor por causa do indice++ e assim sucessivamente
*********/
};
ouvinte.onLoadInit = function(mc:MovieClip) {
mc._y = ypos;
mc._x = xpos;
/**********
Para acessar o valor da variavel faça o seguinte
*********/
mc.onRelease = function() {
//Para teste
trace(this.indiceMC);
//Para chamar a imagem faça
var vfotoacarregar:String = "/lookbook/"+this.indiceMC+".jpg";
};
};
// adiciona os listeners aos clips
//eval("quadro"+i).addListener(ouvinte); /////////Não precisa disso aqui/////////////
//posiciona os clips
/*eval("quadro"+i)._y = ypos;
eval("quadro"+i)._x = xpos;*/
//adiciona 80 pixels ao Y
ypos += 80;
}
// declara a quantidade de imagens a serem carregadas e a posição inicial
var amntImages:Number = 5;
var ypos:Number = 0;
var xpos:Number = 200;
//cria um loader
var carregador:MovieClipLoader = new MovieClipLoader();
// cria o listener
var ouvinte:Object = new Object();
//adiciona o listener a ele
carregador.addListener(ouvinte);
/********
Primeira alteração. Criar uma variável para adicionar o indice
*******/
var indiceMC:Number = 0;
// loop que cria os movieclips, carrega as imagens em cada um e
//define suas posições (às quais adiciono 80 pixels a cada loop)
for (var i = 1; i<=amntImages; i++) {
// cria os movieclips e nomea-os
this.createEmptyMovieClip("quadro"+i,getNextHighestDepth());
// adiciona a ação ao listener ----------------------- AQUI ESTÁ O PROBLEMA (acho eu) ---------------------------
ouvinte.onLoadComplete = function(mc:MovieClip) {
/**********
Outra alteração é a seguinte. O MC é justamente o MC "clicavel" que vc está criando, então
***********/
mc.indice = indiceMC;
indiceMC++;
/**********
quando vc faz, objeto.nomequalquer, vc está criando uma variável dentro do objeto mc.
quando carrega a primeira imagem, o indiceMC tem valor de 0, depois que carregar outra imagem
indiceMC terá valor por causa do indice++ e assim sucessivamente
*********/
};
ouvinte.onLoadInit = function(mc:MovieClip) {
mc._y = ypos;
mc._x = xpos;
/**********
Para acessar o valor da variavel faça o seguinte
*********/
mc.onRelease = function() {
//Para teste
trace(this.indiceMC);
//Para chamar a imagem faça
var vfotoacarregar:String = "/lookbook/"+this.indiceMC+".jpg";
};
};
// adiciona os listeners aos clips
//eval("quadro"+i).addListener(ouvinte); /////////Não precisa disso aqui/////////////
//posiciona os clips
/*eval("quadro"+i)._y = ypos;
eval("quadro"+i)._x = xpos;*/
//adiciona 80 pixels ao Y
ypos += 80;
}
Bom cara, acho que a dica foi essa. Caso não funcione, retorne a postar.. VLW
Share this topic:
Page 1 of 1
Similar Topics
| Topic | Forum | Started By | Stats | Last Post Info | |
|---|---|---|---|---|---|
|
Tag alt..
Tem como usar com imagens cadastradas... |
Dreamweaver |
davidortizb
|
|
|
|
Máximo de usuarios conectados no banco
como funciona isso? |
MySQL |
rmax209
|
|
|
|
O designer e o desafio de criar seu próprio site
|
Portfólio |
Tygra
|
|
|
|
Videos
como centraliza |
Dreamweaver |
mattheusp
|
|
|
|
Redimencionamento e marca d'agua em diversas imgs
Como eu fasso isso??? |
Fireworks |
bl!nkz!n
|
|
|
|
como fazer um sisitema de...
URGENTE!! |
Dúvidas Gerais |
Igor [-)IsN_IP(-]
|
|
|
|
Problema com acentos no MYSQL
Alguém sabe como funciona... |
PHP |
fabian
|
|
|
|
como iniciar...
e o que fazer.... |
Flex |
Shock
|
|
Publicidade
|
|

Help













