ActionScript 3.0 :: Making Mouse Events Ignore Objects?
Apr 1, 2010
How can I make a mouse event ignore, or skip over another object? Say I have a small Sprite on a Large sprite, I want it to act as if the small sprite isn't there, and pass the mouse events directly through to the larger sprite behind it. I've been searching for this for a while and have tried various things but no avail.
I have a solid movie clip that is overlayed with a grid movie clip. Actually they are sprites. The solid sprite underneath has a MOUSE_OVER event. I have set mouseChildren and mouseEnabled on the grid sprite to false so that it receives no events. The problem is that when I go over a grid line the sprite underneate still receives the MOUSE_OUT and then the MOUSE_OVER event again. Is there anyway to make the grid completely transparent to the mouse so that it won't trigger the MOUSE_OUT and MOUSE_OVEr events for the sprite underneath over and over?
In my game there is a podium which at some point can have people on it which are added as children. There is a mouseover event listener on the podium to bring up a rollover box. I only want this rollover to appear when the mouse is over the podium graphicPodium Sprite:Children )-> graphic:Sprite ( visuals for the podium )-> person:Sprite ( a person on the podium)(children) -> graphic:Sprite ( visuals for person)Now the problem is, the person graphic overlaps and extends beyond the podium one causing the rollover area to popup when the mouse is outside of the podium area if its over the perseon sprite.
I have a button with a MovieClip over the top of it. Is there an easy way to tell flash to ignore the mouseOver events of the MovieClip in ActionScript so my button doesn't flash?
I need to have background music playing in a movie that has multiple tabs for the user to click on and go to different frames in the main timeline. I want background music throughout the movie, but it is interrupted by the mouse events. It skips to whatever frame the tabs are associated with. how I can make the music override or ignore the mouse events? I'm new to Actionscripting.
i have 2 sprites on stage. bottomSprite is added to the display list first, followed by topSprite. topSprite partially covers bottomSprite.i've added an event listener to bottomSprite for MouseEvent.MOUSE_MOVED notifications to simply trace the mouseX and mouseY coordinates. however, the notification doesn't work for the parts of bottomSprite that are covered by topSprite.
var bottomSprite:Sprite = new Sprite(); bottomSprite.graphics.beginFill(0x666666, 0.5); bottomSprite.graphics.drawRect(150,150, 150, 150); bottomSprite.graphics.endFill();
I want to handle the mouseevents for all the sprites on the stage including the one those are hidden behind (or overlapped or occluded) and the main condition is that I want to handle the occluded sprite (that hidden behind other sprite). example, say I have sprite1 and sprite2 on stage and I want to start drag whenever i click on the sprite and stop drag after another click.
This can be done easily, but the problem and my main requirement is that if I drag the sprite1 and drop it exactly on top of the sprite2 then sprite2 will be hidden behind the sprite1 I wont be able to drag the sprite2 without moving the sprite1 first. if you have played zynga's empires and allais game on facebook, it is handled seperatly, it is how it works in that game, the mouse event is triggered on the sprite behind the overlapping sprite, if you have two sprites overlapping one sprite than the mouse event is triggered on the sprite which is last and not the one in front irrespective of whether there is only one sprite overlapping or two or three and this happens to irregular shaped sprites (not just rectangles)
I have simple combobox component in flash cs4, I try to add and event listener like this
mycombo.addEventListener(Event.ADDED_TO_STAGE, added); function added(e:Event):void { trace("HI"); }
never get called even if I have the component in the stage manually or via AS, but if I add a listener to MouseOver it works, why the ADDED_TO_STAGE event don't work, also I have a problem with the textFormat style if I use
mycombo.setStyle("textFormat", tf);//suppose tf is a TextFormat object
doesn't work too, but if I put that line inside the MouseOver event it work's why??
I am creating a dynamic text field in the IDE and putting it on top of a simple one-color square movie clip. I've attached a listener to the movie clip in AS 3, to make it act like a big button. However, since the text field is on top, it blocks the button from reading the cursor, within the text field. I set "selectable" to false in the IDE, on the text field, but that didn't seem to work. Any ideas? Do I have to add a listener to the text field, also?
For example there are 2 movieclips on the stage, Parent and Child. I want to be able to drag the parent clip around with the MouseDown event.I also want an event to fire on the MouseClick event on the Child clip. But i only want this MouseClick to happen the user clicks on the Child clip, and not when the MouseUp event fires after the user has finished dragging?Is there something that defines where the mouseup has originated in the Childs MouseClick event handler?
Right now all the sounds (78 of them) on my guitar play using the roll_over event but that doesn't give the user much control over what sound is played.
The actionscript im using to play my sounds is this;
I have a sprite containing a 3x3 grid of boxes. I have a rollover event attached to the container sprite, but I only want it to fire off when I go over some of the boxes, not all. I've tried using mouseEnable = false and mouseChildren = false on the relevant boxes within the sprite, but when the cursor rolls over ANY boxes within the container sprite it fires off the event, not just the ones I want to be activated.How can I get the mouse to ignore certain children within the container sprite, without actually taking them out of the sprite?
I've created something that works like a ToolTip in my Flex application. When I roll over a certain item renderer, I pop up a new control, position it, and remove it on roll out. The order of operations is like this:
Roll over event handler triggered. Add the tooltip to this.systemManager.topLevelSystemManager.toolTipChildren. On creation complete of my tooltip, set x, set y coordinates of the tooltip (on creation complete so the width and height are calculated since they are dynamic). Roll out event handler triggered. Remove tooltip.
This worked fine when I set the x and y coordinates to be x+10, y+10 from the current mouse position. I wanted to add something that re-positioned the tool-tip if it was going to be drawn partially off screen. I added a step that would calculate if it would be drawn off screen, and re-position the tooltip if it was going to be cut off.
The problem with my solution seems to be that it now runs in an infinite loop of redraws, since adding the tool-tip to the screen underneath the mouse triggers the "rollOut" on the item renderer. This triggers the removal of the tooltip, and starts the process over again from 1.
is there any way to ignore tooltip so it doesn't take the mouse focus away from the item renderer that is now under it?
I have a button_mc and within this button is another MC with a masked graphic to create a shine effect. My problem is that when this shine effect passes over the button and hits the mouse cursor it causes the button to deactivate. Is there a way for me to have the shine_mc within the button_mc be ignored by the mouse completely?
I made a simple test Air application to try different approaches to masking or using hitArea to ignore mouse events over transparent areas of a PNG. Can't seem to find the right mix of things to make it work, nor could I find a succinct example on the web.Clicking on the transparent areas of any of these methods don't result in the click getting handled by the background.Here's the code I have:
I have asked before but that was a week ago and ive changed alot of code. I am still having the same issue of trying to ignore MOUSE_MOVE while a tween plays and then reactivate MOUSE_MOVE on Finish. I have tried timers aswell to anticipate the finish with no luck as if i move some code a error #1009 happens.
I have alos tried motion_finished, if statements and even values with no luck as the code will just not function unless left as below.[code]...
Just wanted to ask if there is any advantage for either using mouse click event or touch tap events, when writing apps for mobiles or tablets (for the iphone especially)?
I know that both of them should work fine, but in term of performance, is anyone better? Are there any things I should be aware of when choosing either?
By the way am using actionscript3 to implement the app.
I have an animation that I want to start when clicking on the flash window. However, I've also have some buttons on the stage. If I add an event listener for MouseEvent.CLICK on the stage, then it 'eats up' the events and the buttons don't work.
I've tried some tricks, by adding some invisible buttons on top of the real ones, and use the MOUSE_OVER event to selectively enable/disable the mouseEnabled flag for the stage, but didn't work because it complains that the property or method doesn't exist (which I find odd).
In my isometric flash game I have some models with long shadows. I want to ignore the mouse events (move, click, down and up) when the user performs any action on the shadow part of the image. (see sample image) I know there is a way we can do it by creating a mask in flash. But what if I want to handle it on the .png images (bitmap)? Do I need to create a mask image for all such images? I think it will be very big deal unless there are easy ways (using tools in Photoshop).
I have a custom component, containing a List displaying items from an XMLListCollection:
[Code]....
Also if I click twice, only 1 mouse click will cause my custom event to be dispatched (because obviously there is no change between the items). how to make my List only react to mouse clicks? UPDATE: Yes, I've tried using "change" event for the List before, but then I have the problem that it is fired, even if the List scrollbar is clicked.
For a project, I'm making an interactive side scroller.You move the character with the arrow keys and press the space bar to interact with things.So far, I followed DexNote's tutorial on YouTube.I thought that I would make the interactable objects as buttons, while the mouse focus would be on the character and when you press the space bar it make a mouse click in that area.The trouble I'm having now is that I don't know how to make the space bar trigger the "interactions."
In a project i'm doing I have a custom cursor, using the start drag command and mouse.hide. the issue being that the movieclip being dragged is blocking the mouse from initiation mouse events properly.
I have a movie clip I am using as a button (instance name btn1) and I added an event listener to it (using the following line): btn1.addEventListener(MouseEvent.MOUSE_OVER, animate1); the function "animate1" triggers some small animation when the mouse is over the movieclip. my problem is that the animation is triggered both on mouse over and mouse out events.
It has been awhile since I have worked in flash.Right now I am working on something where I would like a panel to disappear when someone mouses off the stage.stage.addEventListener(Event.MOUSE_LEAVE, leaveHandler); It usually works fine but if I move my mouse really fast it doesn't fire. I have also tried the same thing using a custom invisible button that surounds the perimeter of the stage and I have tried ROLL_OVER and MOUSE_OVERand again, if I do it too fast my event doesn't fire (I am using trace)I can't find anything on the net about this - is this typical of flash that if you move your mouse too fast you break it? Do I need to increase my frame rate (I would really rather not because I have perfectly timed animations - I am at 30 frames per second)
I have a menu drawer at the edge of the screen that shows when the user rolls the mouse over it, but if the user overshoots it an moves the cursor slightly outside the browser window this is unfortunenatly registered as a mouse out.
I want to stop this by using event.MOUSE_LEAVE, but i need to use it as a condition not to triger a "leaveHandler".
I am looking to provide some UI functionality using the mouse- I have two distinct UI events to be achieved via mouse
a) change value b) delete object
I don't seem to have sufficient mouseclick events for both. I am avoiding using the right click as it has some default options(whose signing off will affect the whole project- not just this). I have mouse click used for change value- how do I use the doubleclick as the single-click events seems to get invoked prior?
I would like to make a flash movie with a picture, where when the user holds down the mouse button, part of another picture will emerge in that general area (like a magnifying glass looking into another dimension).
Technically, my idea was to make a flash file with two images, and then code the mouse to be able to make the top picture transparent in a circle-like area around the cursor, while the mouse button is down.
But how to do that? I am using Flash CS4, but I don't really care if the solution is in AS2, or AS3, as long as it works
I want to make the clown dance when he catches a hat (I have a tween for that) who otherwise will be simply standing, Basically I need to animate objects on certain events and then stop, I see so many game makers doing that, I know nothing about it, tried a lot on my own but with no success