O Naiser 0 Denunciar post Postado Dezembro 2, 2008 Gostaria de saber se existe alguma maneira de gerar funções e variáveis com "for". Abaixo segue o que eu tentei fazer, sem resultado. import fl.transitions.Tween; import fl.transitions.TweenEvent; import fl.transitions.easing.*; import flash.display.*; import flash.events.*; for (var i = 1; i <=3; i++) { var this["btn"+i]:Sprite = new Sprite(); this["btn"+i].graphics.beginFill(0x990000); this["btn"+i].graphics.drawRect(i*110, 300, 100, 50); this["btn"+i].graphics.endFill(); this.addChild(this["btn"+i]); function movBtn(event:MouseEvent):void { var mov:Tween = new Tween(this["btn"+i], "y", Regular.easeInOut, this["btn"+i].y, this["btn"+i].x-50, 10, false); } this["btn"+i].addEventListener(MouseEvent.CLICK, movBtn); } O addEventListener funciona sem problemas e o graphics se eu criar cada um dos Sprites separados, o resto só com POG fora do "for". Pelo que eu entendi do erro, é que o this["rOver"+i] não pode denominado dessa maneira. Existe alguma outra solução? Desde já, valeuzão ae. Compartilhar este post Link para o post Compartilhar em outros sites
Eder Fortunato 15 Denunciar post Postado Dezembro 3, 2008 testa assim: for (var i = 1; i <=3; i++) { var btn:Sprite = new Sprite(); btn.name = "btn" + i; btn.graphics.beginFill (0x990000); btn.graphics.drawRect (i*110, 300, 100, 50); btn.graphics.endFill (); this.addChild (btn); btn.addEventListener (MouseEvent.CLICK, movBtn); } function movBtn (event:MouseEvent):void { var mov:Tween = new Tween(event.currentTarget, "y", Regular.easeInOut, event.currentTarget.y, event.currentTarget.x-50, 10, false); } quando você adidicona uma função em uma botão ou movieClip, e esse evento é disparado, você pode saber "quem" disparou usando o event.currentTarget []´s Compartilhar este post Link para o post Compartilhar em outros sites