Revision: 19334
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at October 21, 2009 16:11 by MacEvelly
Initial Code
// Assumes that the following buttons with instance names are on the stage
// shape1, shape2, shape3, shape4, shape5
// bg1, bg2, bg3, bg4, bg5
// font1, font2, font3, font4, font5
// color1, color2, color3, color4, color5
//
// This goes thought all the children and cleans out the generic "instance" named children and assigns the rest a click listener
for (var i:int = 0; i < numChildren; i++) {
var tempName:String = getChildAt(i).name.replace(/\d/g,'');
if (tempName != "instance") {
getChildAt(i).addEventListener(MouseEvent.CLICK, myButton);
}
}
// Once clicked, this function uses the variables in the name to assign actions
function myButton(evt:MouseEvent):void {
var goToFrame:int = evt.currentTarget.name.replace(/\D/g,'');
var tempName:String = evt.currentTarget.name.replace(/\d/g,'');
switch (tempName) {
case "shape" :
trace(1,tempName,goToFrame);
//shapeMC.gotoAndStop(goToFrame)
break;
case "bg" :
trace(2,tempName,goToFrame);
//bgMC.gotoAndStop(goToFrame)
break;
case "font" :
trace(3,tempName,goToFrame);
//fontMC.gotoAndStop(goToFrame)
break;
case "color" :
trace(4,tempName,goToFrame);
//colorMC.gotoAndStop(goToFrame)
break;
}
}
Initial URL
Initial Description
This uses the button's instance name to assign functions. Instead of using a bunch of event listeners, you can use one function to delegate actions according to the button's instance name.
Initial Title
It's all in the name - Instance Name Function
Initial Tags
button
Initial Language
ActionScript 3