ActionScript 3.0 :: Retrieving A Useful Name From Mouse Event Target
Jul 10, 2009
I'm having trouble retrieving a name from my mouse event target, so that I can tell which target was clicked.I have two buttons, forwardArrow and backArrow. The listeners on each arrow point to the same listener function in which I want to differentiate between which button was just pressed.I can't get any name but the class from event.target.What's the best way to differentiate between these?[code]
i've created a bitmap with data and placed it into a sprite so to receive mouse events. however, i'm struggling with reading the BitmapData within the sprite.
how to manage the target of a mouse event. As everyone knows, if I use localX/Y property on a mouse event, I'll get the x/y coordinate of the curson referred to the target Sprite. But if I need these coordinate referred to another Sprite, layed in the bottom of the stage (therefore unreachable for the event), how can I do for these?
How to get general id (or) name from xml loaded images. bcoz, i want to drag and drop that images in generic method. Now, i currently used the event.target.name for each one.[code]
i am trying to do a simple blackboard on mouse down, start drawing on mouse move, if drawing, draw line on mouse up, stop drawing i set the listeners on a simple clip with a rectangle. if i dont fill the rectangle, the mouse events wont fall into the rectangle, but if i fill the rectangle, it will paint behind the rectangle, so anyway i wont see any succesfull results. what i did was create another sprite and paint within it; something like
im working on:[code]For more detailed comprehension: corner is the black corner with the (i) and 'Promotion', text is some random text that can be displayed in the white remaining space, container contains corner and text, and finally this class contains container!I need to retrieve the event mouseevent.rollover/rollout from corner.And what's wrong?
1. When I put the mask on container (container.rawchildren.addchildren + container.mask = mask) and the dropshadowfilter on container (container. filters = [glow]), I cannot detect the mouse events.
2. When I put the mask on the promopanel (this.rawchildren.addchildren + this.mask = mask) and the dropshadowfilter on promopanel (this.filters = [glow]), I cannot detect the mouse events.
3. When I put the mask in a component and the filter in another, it does not work either.
4. If I remove the mask OR the filter, it works!! But I need them both...
So, does anyone has an idea on how to make this work? I've been trying to look for issues with filters, masks and mouseevents but haven't found anything that could enlighten this issue.
I'm working on board game which involved dragging different coloured squares onto an 8x8 square grid. I can't seem to figure out how to get the squares to drop onto whichever square the mouse releases it on.Is there a way to retrieve the instance name of any objects on the stage that the mouse rolls over?
I'm not proud of my subject line, but it was the best I could do.I'm using this while loop to activate the function buttonpressed from one of five buttons named thumb0, thumb1, etc.:i = -1; while (i++ < 4){this["thumb"+(i)].addEventListener(MouseEvent.MOUSE_UP,buttonpresse d);}I want the main timeline to jump to the labeled frame corresponding with the targeted button's numberfunction buttonpressed(evt:MouseEvent):void{MovieClip(root) .gotoAndStop("clip"+[i]);}
how can i access event.target outside event listener method.say for example
my_mc.addEventListener(MouseEvent.CLICK, onC); function onC(e:MouseEvent):void { var m:MovieClip = e.target as MovieClip; } trace(m.totalframes);/// not working
now what if i want to get totalframe property of m instance, in short for every movieClip clicked.
I have these buttons in a movie clip and I would like to have only one event listener for the parent, using event.target to point to the children. I have also tried event.currentTarget, and it didn't work.here is the code that works:
i'm new to AS3. Couldn't understand what some of the explanations out there are getting at, so i decided to post it here. In the code example below, what does event.target & event.currentTarget point to?
I have a Flex 4 List component which I have tied a click event to. In my event, my assignment of the source file paths works just fine --> my larger image displays just fine when a thumbnail click happens. My problem comes when trying to attach elements of the dataProvider to text inputs on another panel. Actionscript is throwing an error. Can someone point me in the right direction??
I am trying to learn JavaScript and I am wondering whether JavaScript has a event listener just like ActionScript's ENTER_FRAME. Basically, I want this event listener to listen "all the time" not just wait for any particular instance (mouse click, keyboard event) of event.
I'm implementing a text display area inside an app that displays selected text when the user mouses over one of four elements. Rather than creating a handler function for each element, I would like to get the name of the instance that is calling the handler in order to implement a switch statement. I've tried two ways, but both aren't working:
Both of those return undefined for the variable name. However, in the debugger, I can trace the event values through currentTarget.name, and that shows the instance firing the handler function, whether it be withdrawalText, initialText or timeText. So how can I apply the name value to a variable in order to determine which text block to display?
I have a URLLoader and a Loader triggering the same function. If event.target is traced by this function it outputs [object URLLoader] or [object LoaderInfo].However, the if statements don't seem to know what the event is and won't output anything even though it traces fine in the first trace statment. What is going on here?
I have a flash that has a background symbol that responds to CLICK event. On top of that symbol I have a sprite that contains a Bitmap with transparent pixels. Both of them are added to the stage, so they are not related directly.
I want clicks on the transparent pixels on the sprite to go straight through to the background. I have read about mouseEnabled / mouseChildren but have not been able to make these work. The symbol ignores the mouse events when I use them, but does not pass it along as if its transparent.
Is this possible to do with flash? Or will I have to re-route mouse events?
My stage has about 25 buttons on it. Each button when pressed to tweens the background to some random x/y coordinates and then loads an external swf file.This is all working, but the timing is off. How can I wait for the initial background tween to end before I make the loader call to the .swf file.Currently each button's behavior is called on the MouseEvent.CLICK event which calls a function that knows its unique filename.swf. I know you can add the MOTION_FINISH even to the tween event but then I would have to call a new function and lose track of the button that initially called it.
Now, when I click on the button in the area where the movieclip is it will register this movieclip as event.target. I would like to make the button the event.target regardless where I click and prevent flash from registering the movieclip inside the button as the target.
I searched the forum first to find similarities but I couldn't find one. Sorry if this is a double however. If you try to compare a widget's instance through "event.target" after it has raised a "focusOut" event, then you won't get the actual instance.
My parent class adds bonus_mc It then adds an event listener to bonus_mc to listen for a custom event When the custom event is dispatched I want the parent_mc to remove event.target. But it wont, it's says 1118: Implicit coercion of a value with static type Object to a possibly unrelated type flash.display: DisplayObject.
function X { switch 1) tween1 -> on tween finish launch onTweenFinish(); 2) tween2 -> on tween finish launch onTweenFinish();
[Code]....
results in: ReferenceError: Error #1069: Property name not found on fl.transitions.Tween and there is no default value.
What I want is to process all three tweens in a single function, but I need to know which tween it was. It is of course possible to make three separate functions, one for each tween, but that is just not proper.
i add eventlistener(MouseEvent.MOUSE_OVER) to some movieclip. but when i write: addChild(event.target) it doesnt work.
More info: i have several rectangles on the stage. when movie starts, they all get alpha 0.3, when you mouse over any of them they get alpha 1 with tween. But i made it so that, rectangles are located over the each other. and i want to make it so, that when you mouse over any rectangle it comes to front, but it doesnt work with addChild(event.target).To try it at your own, just create 3 different sized boxes and give then instance names: square_mc, square2_mc, square3_mc and copy+paste this code.
I am searching for a way to use one eventlistener with multiple buttons that bassically behave the same way.It works with event.target.(any movieclip property here, e.g. alpha).
var urlString1:String="TestDrive/z05483205.xml"; var url1:URLRequest=new URLRequest(urlString1); loader1=new URLLoader(url1); loader1.addEventListener(Event.COMPLETE, test); [Code]....
Can I change an event target's name? or it's an only-read property? I've been googling it but to no avail... For example, say this is my button code:
[Code]...
if trace the event target's name, you get buttonOne. But what I need to do is have the event's target's name to become buttonOne1. because I already have a button with the instance name. That's my setup, not the way I would do it OF COURSE, but this is the way the unique file is setup for my aunt, to have two set of buttons that calls the same image...(not the thumbnail issue I had before)... so the Question: is there a way to add a letter or remove a letter from the event target's name? You know how you can add a letter to the beginning of an array like buttonsArray.unshift(newButton)....can you do the same thing with an event.target.name?
I made this file, test1.fla where a movieclip named mc1 contains two other mcs. Then I wrote some simple code to make the target of the event (in this case a mouse event) shrink a little.
Here's the code I've used:
Code: mc1.addEventListener(MouseEvent.MOUSE_OVER, onDown); mc1.addEventListener(MouseEvent.MOUSE_OUT, onUp); function onDown(evt:MouseEvent):void {
[Code]....
When I test this movie, only the selected mc that I hover is the one that shrinks, the other does not shrink (I am talking about those guys inside mc1). However I have done a similar file called test2.fla in which I replaced the nested mc's with shapes, the code is exactly the same, but in this case it's mc1 that shrinks, I mean no matter what shape I hover with mouse, both shrink.
I know (think so) that this is because of event propagation, but why do these two files react in a different manner? Is it becase the mc's inside mc1 can also be a display object container, but shapes cannot?