# Bitmaps, masks and depth

**URL:** https://forum.kirupa.com/t/bitmaps-masks-and-depth/291983
**Category:** flash
**Created:** [July 8, 2009, 2:51pm UTC](https://forum.kirupa.com/t/bitmaps-masks-and-depth/291983 "2009-07-08T14:51:01Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![davec](https://avatars.discourse-cdn.com/v4/letter/d/a4c791/32.png) [@davec](https://forum.kirupa.com/u/davec)
#### Post date: [July 8, 2009, 2:51pm UTC](https://forum.kirupa.com/t/bitmaps-masks-and-depth/291983/1 "2009-07-08T14:51:01Z")

</div>

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&lt;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]
