The more I learn about AS3 the more I enjoy it... however, figuring out all the little insider tricks can be aggravating.
My current struggle has been with the mouse enabled feature. Basically if you click on the screen, Flash will register the click with the top layer regardless if that top layer is being used or not. My current application contains many gradients, masks, and transparent layers and since it was not my design I sometimes do not even realize they are there. I may have a button that I can see plain as day (who came up with that quote? and better yet, who still uses it?). But I can not click on this button because of some masked/transparent evil movieclip that is on top of the button. So I dig through the layers and try to find this evil movieclip that was created to cause me misery and I set its mouseEnabled to false... which basically means the mouse ignores this layer and checks the next layer. You'd think that would solve it, and in some cases it does.
However, there is a catch. What if this evil layer is so clever that it had another invisible evil layer hidden within it as a child. Well shat... My first reaction was to dig through each child and set the mouseEnabled to false. However, Flash comes to the rescue with mouseChildren. Basically if you set mouseChildren to false then Flash will ignore the mouse clicks of all the children of that Movieclip.
Even with all this grief I do have to admit I prefer this setup over having movieclips being accidentally clicked in the background (which occurred frequently in previous versions of flash).