ActionScript 3.0 :: Any Way To Prevent Event Propagation?
Feb 5, 2009
I have a movieclip containg several containers with other objects attached to them. Those containers have different levels of nesting. Now I want to add an EventListener to the top-level MovieClip and the called function uses attributes of this MovieClip. Because
of that I cannot just retrieve the MovieClip by saying e.target.parent but have to stop the propagation. I know there is a stopPropagation() method but I don't really get how (and when) to use it.
If I have sth like this:
function myResponse(e:Event):void {
//Things happening
} myMC.addEventListener(MouseEvent.CLICK, myResponse);
Where do I have to stop the propagation?
View 1 Replies
Similar Posts:
Feb 25, 2010
Why we need to use event Propagation?
View 1 Replies
Feb 8, 2010
I have a container named circleHolder_mc. Inside I have four circles named circ0_mc circ4_mc. My goal is to have each circle blink on mouseover. The closest I've got is the following code which causes all of the circles to blink at the same time.
circleHolder_mc.addEventListener(MouseEvent.MOUSE_OVER, onBlink)circleHolder_mc.addEventListener(MouseEvent.MOUSE_OUT, unBlink)
var timer:Timer = new Timer(1);timer.addEventListener(TimerEvent.TIMER, onTimer);
function onTimer(evt:TimerEvent):void{ alpha +=7;}
function onBlink(evt:MouseEvent):void{ timer.start();} function unBlink(evt:MouseEvent):void{ timer.stop(); alpha = 100;}
View 16 Replies
May 18, 2009
how event propagation works in PV3D its definitely not like the conventional Flash style. On a quick search i have been able to find out that its possible using the InteractiveSceneManager Class, but unfortunately
View 1 Replies
Feb 24, 2010
I'm using Event Propagation in order to change the alpha of each Child on MOUSE_OVER, MOUSE_OUT, and MOUSE_DOWN using... evt.target.alpha On OVER the Child's alpha increases from 0 - 0.5. On OUT it goes from 0.5 - 0. On DOWN it goes to 0.5 and stays there even with a MOUSE_OUT. What I'd like to do is then add a button to the main stage which takes the visibility of all Children back to 0, a basic type of Clear button.
I have one way to do it where I list each Child in a function (all 9!). But can I re-write this so that all Children are effected writing so much code? Ideally I'd like to send a request to find the number of Children (9) and then use this variable to write a function which says (where 'n' is the Instance name of each Child) that n(0-numChildren).alpha = 0
[Code]...
View 3 Replies
Oct 18, 2011
What is the difference between event.bubbles to false for any event, And Setting event.stopPropagaion() or stopImmidiatePropagation() while handling event? I am using flex4 with as3.
View 3 Replies
Sep 23, 2009
I have just learnt about event propagation and have made a few successful tests. However, I have encountered a problem when trying to use event propagation with several MovieClips that are masked and nested in a movieclip. The display list like so:
hd_cont > cndMask > cndThumbs > 9 movieclips with instance names box0, box1, etc etc.
I am attempting to scale the 9 movieclips at the bottom.
So I have tried:
Code:
hd_cont.addEventListener(MouseEvent.MOUSE_OVER, boxGrow);
hd_cont.addEventListener(MouseEvent.MOUSE_OUT, boxShrink);
function boxGrow(e:MouseEvent):void {
TweenLite.to(e.target, 1.5, {scaleX:1.5, scaleY:1.5, ease:Strong.easeOut});
e.target.alpha = .5;
[Code] .....
But when I reference the cndMask I get a
Code:
TypeError: Error #1010: A term is undefined and has no properties.
at gallery_fla::MainTimeline/gallery_fla::frame3()
message in the output panel.
View 3 Replies
Dec 18, 2009
I have a custom TitleWindow component that is registered to listen for keyboard events from the user (so that esc closes the window, enter saves, etc.). However, in my testing I've found a couple cases where my keyboard event handlers don't fire. My best guess as to why this is happening is that there is some child component somewhere that has stolen focus and is stopping the keyboard events from propagating.
Unfortunately, due to the large number of components in my TitleWindow, I have no good way of knowing who has stolen the focus. My question then is, are there any good tips / techniques / tools for debugging focus issues and event propagation in Flex? Basically, I need something that will tell me who has the focus at any given time and who's handling an event at any given time... is that possible?
View 1 Replies
Jun 16, 2010
I have a Canvas (lets call it the Drop Box) which users can drag and drop external files onto. Next to this I have a ViewStack, of which one of the layers is a Canvas with a TileList. I have successfully managed to code it so that the items dropped onto the Drop Box appear in the TileList. I simply capture the darg drop event (lets call this event A) and dispatch a new one that the TileList is listening for (lets call this event B).
However, this only works if the ViewStack selectedIndex is set to that of the Canvas with the TileList. If the Canvas with the TileList isn't selected then the event listener which is added to the TileList at CreationComplete level (event B), won't be called until after the drag drop event has dispatched (event B). This means that something is firing before something even has a chance to listen for it!
I've tried looping until the Canvas with the TileList is completely drawn, but this causes the app to hang.
I've also tried passing the event to the Canvas and storing it locally, but when I attempt to access the clipboad of the event I get an error (dead clipboard).
Effectively I want to only dispatch the event to the Canvas after it's had a chance to load, and add the event listener to the TileList.
View 1 Replies
Jul 24, 2009
I have a custom component made up of a selectable control (radio button)and a text input. I want to perform some logic in response to the change events from both of those controls, but after that I want anything that is registered on the composite component's change handler to have a change to handle the events as well. The problem is, when I re-dispatch the events the event target has changed to my custom component, losing the originating event's target.
Here's my custom component:
<?xml version="1.0" encoding="utf-8"?>
<mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml" label="{listItem.@text}" data="{listItem.@level.toString()}">
<mx:Script>
[code].....
In the event handler that receives change events from this component, I see that event.target is an instance of SpecifyRadioButton, not the TextInput or RadioButton, as I'd expect. How should I propagate the event to get what I want here?
Getting event [Event type="change" bubbles=false cancelable=false eventPhase=2]
from question0.tabSurvey.questionForm.questionContainer.Single94.VBox95.SpecifyRadioButton111
View 2 Replies
Jan 20, 2011
I have a couple of Sprites on my screen and I want to write a single event handler to handle the double click on any of those Sprites. The following approach works for every event type except DOUBLE_CLICK:
[Code]...
To make it work, because in my application I will have lots of Sprites. In my opinion, a single event and the target property are more efficient than hundreds of event listeners. Am I right or should add event listeners to every Sprite?
View 4 Replies
Mar 21, 2010
I'd like to have a double click event on a datagrid in Flex3. The following example only works if the Accordion (id = "mustBeSecond") container comes after the DataGrid. Why is the order of the components important and what can I do to prevent this behavior? (The example does not work. If you change the order of "mustBeSecond" and gridReportConversions" the example works fine)
<mx:Script>
<![CDATA[
import mx.controls.Alert;
[code].....
View 1 Replies
Jan 22, 2009
I have a "large" movie clip and "small" movie inside a "large" movie clip but on it's let's say upper right corner:
Code:
largeMc.addChild(smallMc);[
If i try to catch Mouse.DOWN events on them the following way:
Code:
largeMc.addEventListener(MouseEvent.MOUSE_DOWN, largeClicked);
smallMc.addEventListener(MouseEvent.MOUSE_DOWN, smallClicked);
Then of course both event are captured no matter where i click.Is it possible to capture independent mouse clicks on both of these two movie clips and if so, how can i do that?
View 3 Replies
Jan 22, 2009
i have a following situation: I have a "large" movie clip and "small" movie inside a "large" movie clip but on it's let's say upper right corner:
Code:
largeMc.addChild(smallMc);
If i try to catch Mouse.DOWN events on them the following way:
Code:
largeMc.addEventListener(MouseEvent.MOUSE_DOWN, largeClicked);
smallMc.addEventListener(MouseEvent.MOUSE_DOWN, smallClicked);
Then of course both event are captured no matter where i click.Is it possible to capture independent mouse clicks on both of these two movie clips and if so, how can i do that?
View 5 Replies
Dec 1, 2010
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.
View 3 Replies
Dec 20, 2011
In my game, if the ball hits the winBox, you get a Win message. The problem is that the ball bounces, and it might hit the box repeatedly. How can I prevent the message from happening twice per session?
if (simContacts.isCurrentContact(winBox,gameBall))
{
// Won.
[Code]....
View 2 Replies
Oct 11, 2009
Below is the code for a simple Flex actionscript project. A sprite is partially covering a hyperlink. What's happening is that when you hover over the sprite, if you're also hovering over the hyperlink, the hyperlink is activated. I want to prevent that. I want the hyperlink to be activated only when the mouse hovers over it -- but not when the mouse hovers over the sprite which covers it.
package {
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.events.TextEvent;
import flash.text.Font;
[Code] .....
View 3 Replies
Jan 20, 2011
Is it possible to prevent/disable default behavior in input textfield on Keyboard.UP. [code]...
View 4 Replies
Mar 19, 2011
I have an AS3 movieclip with a button. Both the movieclip and button needs a click event but when I click the button it also fires the parent movieclip's event handler.
View 1 Replies
Dec 6, 2011
I'm trying to make a vieport in which you can pan by dragging the background image around. Here is what I've done: [URL] Note that I've hidden the mouse cursor and replaced it with 2 custom ones. The problem is, the event attached to the background, which is a touch event, fires even when the mouse is over a sprite/movieclip (the monkey or the stats) that's in front of that background. And the stats isn't even in the gameLayer (where the monkey and the bg and the mouse cursors are). Try to drag the stats around, and see that the background and everything else pans with it (this is unwanted). Also, I need to remove the custom cursor and show the regular cursor whenever the mouse is NOT on the background (i.e. when it's on the monkey or stats or any new sprites I may/will have in the future).
[Code]...
View 1 Replies
Feb 14, 2012
I would like to disable copy event in the TextArea I'm using. To achieve so I added the following code block:
function initTA(){
var tf:IUITextField = body.mx_internal::getTextField();
tf.enabled = false;
}
<mx:TextArea id="body" creationComplete="initTA()" .../>
This is working fine unless the text area has lots of text inside in which case a scroll bar appears. After the scroll bar is being used by the user, the text area stopped blocking the copy event.
By the way, I am using text area for display purposes since I use rich text area format.
View 1 Replies
Aug 4, 2009
So I've got a project that loads some bitmaps and plonks each one on the display list with some events to allow me to drag them and click-to-front. It works fine by and large but if the bitmap is a PNG with transparency then normally clicking on a transparent bit will still trigger the events. I can get round that with a quick check of the pixel's alpha using hitTest no problem.
The issue I have is if there is a bitmap behind the front one showing through then I can't click on that. From Flash's POV I'm still clicking on the front-most clip as there is still something there, even if it is technically invisible, so the event is triggered 'properly'. From my point of view I want to click through that clip on the one behind it, like they were paper cutouts on a table.
I can't disable the top layer's mouseEnabled property because it still needs to listen for events. Either I need something like event propogation only with siblings on the display list or I'm going to have to maintain a list of all the relevant clips and keep checking they're under the mouse pointer. Obviously I'd rather the former at the latter is a kludge.
View 2 Replies
Apr 12, 2011
I have editable grids which are 2-way binded to my model. What I want is to validate my data when user edits any cell before it get updated in model. I have applied my validation at ItemEditEnd handler, but, I want to apply validation in between itemEditBegin and itemEditEnd events.
View 1 Replies
Aug 22, 2011
I hava a custom component and it contains a child icon. If I add a mouse-click event listener to both component(click-listener1) and icon(click-listener2), the event dispatched sequence is click-listener2, then click-listener1. I can understand it. But if I add a custom event to component (listener1), and mouse-click event to icon(listener2), when icon is clicked, the component will dispatch the custom event. In my test, the event dispatched sequence is listener1, then listener2. It doesn't match with event-bubbles rule.
In my opinion The custom event is dispatched in listener2, which triggers listener1. Why event flow sequence is not listener2, listener1?
In component.
icon.addEventListener(MouseEvent.CLICK, iconClickHandler);
private function iconClickHandler(event:MouseEvent):void
{
[Code].....
View 1 Replies
Jul 7, 2011
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.
View 3 Replies
May 5, 2010
When I embed swf in HTML it always stays on top of other HTML objects.Is there any work-arround for this issue?
View 3 Replies
Mar 21, 2009
I have an FLV embedded in a SWF, and it preloads whenever a user visits the page it's on. Is there a way to prevent it from preloading, or force a user to click play before it loads?
View 2 Replies
Dec 22, 2009
I searched everywhere for a peice of code to prevent a web page from loading when it is not on a server.Finally found this one and I swear it was working last night.Am I placing the function in the wrong place?I have everything in 2 framesif the flash swf is currently running on the propper server it should skip to frame 2 and if it is running on a computer or the wrong server it should stay at frame 1.[code]
View 5 Replies
Aug 29, 2010
I've been searching on google and through forums for hours now trying to find a way to prevent my site from cache in browsers. I know it's not possible to "prevent" it from caching, but it's a way to trick the browser into thinking it needs to load the SWF again instead of just getting the one from the cache.
Now I've tried many types but I can't get it to work. I don't understand how to implement it into AS or Javascript and what goes where..
My site is set up by one parent SWF combined with a HTML script and 6 child SWF's, and they are updating all the time so I really need this function.
See it here: [URL]
The most used one is this I think or something close:
myIdentifier=Math.round(Math.random()*10000);
loadMovie("myAnim.swf?uniq="+myIdentifier,1);
But how do I use it? where it goes and will it work on several child SWF's?
View 4 Replies
Nov 10, 2009
I'm a teacher and I have some animations made in flash language (swf). I would like to publish these animations on my web site so my students could see, but I wonder if there is any way to prevent these animations being downloaded.
Example: when I see an animation published on my web site, this animation is stored in Internet Temporary Files and I can save this animation anywhere. How can I prevent an animation is stored in the temporary folder? In other words, this animation can only be seen if the user is logged on the site.
View 11 Replies