How do I appear/dissapear a button on MOUSE EVENT?

Hi all,

I'm trying to make my own flash player (not one of the packed ones gives me what I need) and I'm trying to make appear and dissapear the big middle "play/pause" button whn the user hovers the mouse. I've made a symbol (graphic) out of a JPG image and named it playBtn with Alpha = 0 (it will have auto play from the start) and solved all the AS3 errors in Flash CS5 but still the button don't appear (or dissapear if I start with Alpha = 100%).

Here's my code.

Any ideas?

Thanks in advance.
//Import for the Tween Class to fade controls out
import fl.transitions.*;
import fl.transitions.easing.*;

var playBtn:Object = new Object();

playBtn.addEventListener(MouseEvent.MOUSE_OVER, showBtn);
playBtn.addEventListener(MouseEvent.MOUSE_OUT, dimBtn);

function showBtn(e:MouseEvent):void{
	playBtn.alpha = 1;

function dimBtn(e:MouseEvent):void{
	playBtn.alpha = 0;

Open in new window

Cesar AracenaPHP EnthusiastAsked:
Who is Participating?
blue-genieConnect With a Mentor Commented:
Hi again. when you compile the movie, ie. publish it - does it not give you an error?
you should have a compiler error tab which shows you issues and why you are not able to compile a file.

ok, step 1.
the graphic in the middle, change it to a movieclip, give it an instance name.
step 2
remove the var middlePlayBtn:Object = new Object line

your code should now work, ie. button not visible, rollover it the button is visible.

some quick FYI
if you have something on the stage and you want to be able to do something with it you must have it as a movieclip so that you can give it an instance name to reference it with.
if you place the thing on the stage directly you do not need to declare it in code, ie. var something:Something ... if you do it will throw an error.
if you are doing things with AS3 classes and you use addChild() to place it on the stage at runtime, then you would have to declare it.

hope that helps.
are your showBtn etc methods triggered?
why have you made it an Object ?

might be easier if you upload your file
Cesar AracenaPHP EnthusiastAuthor Commented:
Dunno if the methods are triggered and I really don't know why an object... didn't know what else to decalre it. That might be the couse but I don't know what else to put in there.

I can't upload the file. It says that there's a file inside the .fla with the extension .xfl. Tried to compress it and got the same result.

How can I send it?

Easily Design & Build Your Next Website

Squarespace’s all-in-one platform gives you everything you need to express yourself creatively online, whether it is with a domain, website, or online store. Get started with your free trial today, and when ready, take 10% off your first purchase with offer code 'EXPERTS'.

put a trace inside your method

trace("show btn called");

check your output window - does it display the message when you mouseover the button?

i don't know about the xfl extension thing, try chaning your fla to filename.txt and upload that. (literally just change the extension)
Cesar AracenaPHP EnthusiastAuthor Commented:
Thanks again blue-genie.

Tried tracing it but the output is white. Maybe I've put it wrong. Here's the file. It turns out that XFL extension is the new FLA extension for CS5. It's just a renamed ZIP containing an XML structure of the project (much like Flex). I guess EE guys will have to include it in the allowed extensions.

I saved it in CS4 FLA and now it's trully an encrypted file (like before).

BTW the middlePlayBtn (the one I'm trying to change on mouse event) has alpha 0. It's the layer 17.

Thanks again.
Cesar AracenaPHP EnthusiastAuthor Commented:
Sorry for the late response. I've got involved in other subject.

Great detailed explanation... worked like a charm ;)

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.