I’m trying to learn AS3 in a practical fashion by converting a recent AS1 project.
I have a set of menu buttons using a basic rectangle with one rounded corner, and I’ve created this shape as a clip and used this as the base for a multilayer clip ([COLOR=“blue”]greenTab[/COLOR]) that consists of:
Dynamic text field with text from XML - [COLOR=“Blue”]_label[/COLOR]
the shape clip used as a mask - [COLOR=“blue”]picMask[/COLOR]
a bitmap loaded from XML and masked by the above - [COLOR=“blue”]photo+i[/COLOR]
the shape clip used as a base - [COLOR=“blue”]base[/COLOR]
This all seems to work OK, but the _[COLOR=“blue”]label [/COLOR]layer blocks the mouseover on the [COLOR=“blue”]photo [/COLOR]layer.
Any ideas how I get round this?
[COLOR=“DarkSlateBlue”]import fl.transitions.Tween;
import fl.transitions.easing.*;
var numOfItems:Number;
theText.alpha=0;
var startX:Number=82;
var startY:Number=152;
var btnNum:Number=5;
var pageData:XML;
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE, onLoaded);
loader.load(new URLRequest(“mainMenu.xml”));
function clickedMe(evt:MouseEvent):void {
trace(evt.target.name);
}
function overMe(evt:MouseEvent):void {
var myTween:Tween = new Tween(evt.target, “alpha”, Regular.easeOut, 0, 1, 1, true);
}
function leaveMe(evt:MouseEvent):void {
var myTween:Tween = new Tween(evt.target, “alpha”, Regular.easeOut, 1, 0, 1, true);
}
function onLoaded(evt:Event):void {
pageData=new XML(evt.target.data);
var spacer:uint=pageData.tabs.spacing;
//create buttons
for (var i:Number = 0; i<btnNum; i++) {
var btn:MovieClip = new greenTab();
btn.name="button_"+i;
btn.x=startX;
btn.y = startY + (i * spacer);
addChild(btn);
//import jpg and add to button
var img:XMLList=pageData.tabs..image;
var myPic:String =(img*);
var btnPic:Loader = new Loader();
btnPic.load(new URLRequest(myPic));
btnPic.name="photo"+i;
btnPic.addEventListener(MouseEvent.CLICK, clickedMe, false, 0, true);
btnPic.addEventListener(MouseEvent.MOUSE_OVER, overMe, false, 0, true);
btnPic.addEventListener(MouseEvent.MOUSE_OUT, leaveMe, false, 0, true);
btn.addChildAt(btnPic, 3);
var txt:XMLList=pageData.tabs..label;
btnPic.alpha=0;
btn._label.text=txt*;
}
}[/COLOR]