Flex :: Determine Mouse Event If Over A Specific Component?
Dec 23, 2011
I'm trying to determine with the help of a mouse event if I'm over a specific component. So right now I have two components, let's say buttonA and buttonB. ButtonA has a listener on it already listening for the mouse out event. ButtonB is flush against the edge of ButtonA. I need to find out the code for it. Here is more details:
I have a custom component with a couple of text input fields (among other things) that is used as the row components in a tree. I have had to write my own drag and drop handling, and have almost finished the start handler (which I did last), using mouseDown as the event to kick if off.It basically works, but when the tree is expanded enough so that a scroll bar shows, using the scroll bar drags a row of the tree at the same time ! Not the desired behaviour.Looking in the debugger, I can see that when a row of the tree is dragged the currentTarget is the tree itself, and the target is the textInput component. Looking at the parents of that component I can see my custom component (that contains the textInput) a couple of levels up.My question is, is there an easy way to determine if this target is descended from my component, so that I can initiate a drag only if that is the case ? event.target is doesn't work by the way.
I have an application in flex, it has some components out of the box and quite a few of custom components and events. I want to get all event listeners on a specific component in runtime, I know how to do it with monkey-patching the framework but I do not want to use a monkey patch nor can I rely on this in production.
I have a component that extends UIComponent of Flex, I want to add it a FlexMouseEvent.MOUSE_DOWN_OUTSIDE listener but it does not works. that means I can not capture the event. But when I use PopUpManager to add this component, and then add a FlexMouseEvent.MOUSE_DOWN_OUTSIDE listener, it works fine. Is FlexMouseEvent.MOUSE_DOWN_OUTSIDE only works for pop-up components?
I'm currently building a Flex 4.5 mobile project including several views and custom written MXML components that can be incorporated dynamically into those views.How do I determine which component currently has focus, namely has been activated by the user tapping on it? The background for this is a global search function in the main application. Depending on the results of this search, fields in the custom components are set. Given that I don't want all components in a view to listen to the outcome of that search function, I have to check which one is currently active.I'm trying to bind the selected object (the result from the search function) to the active component.
When one call Clipboard.generalClipboard.getData() in ActionScript outside of Event.PASTE processing function it fails with following message. The Clipboard.generalClipboard object may only be read while processing a flash.events.Event.PASTE event. Even if I dispatch Event.PASTE event and call this function within event handler it still fails. How does it determine which event is currently being processed?
Ref: spark.components.ButtonBar. In the spark ButtonBar's mouseOver event, how do you determine which of the several buttons the mouse is hovering over? There is, of course, no selected index at this juncture. If it makes a difference, my ButtonBar is not defined in MXML but is instantiated in ActionScript and an ArrayList is assigned to the dataProvider property of my ButtonBar instance.
I am trying to understand event propagation in Flex framework and have a following doubt on it:
Scenario: I have a built-in component DropDownList on change of which I want to create a custom event refreshPreview and want to propagate it to a custom component PictureComponent.
In the custom component's mxml, I have added the Metadata directive as follows to register a refreshPreview event with the compiler
Layout Details: In my main mxml application I have laid out DropDownList and the custom component such that both are siblings (i.e. have a common indirect parent) e.g.
I am seeing that the refreshPreview event is not getting propagated to the custom component.
I doubt this is because the built-in component is a sibling of the target (where the event got generated) and not a parent. how to make refreshPreview event propagate to custom component?
I'd like to add visual emphasis to a selected UI component by de-emphasizing everything around it, e.g. make everything around it blurry, or more transparent, or something similar. Two questions, really: spec: what effect would you use do build something like this? Do you know of any software that does this well? implementation: what is the most obvious approach to apply a blur, or change alpha, to everything around a specific component?
what should i do to get chart's data on the click of respective data Legend. suppose i have array [{id:123, label:sales, year:2010},{id:124, label:refunds, year:2010}]for a column chart which has year in x-axis and sales iny-axis.two legend showing labels sales and refund.What i want is to get the whole data (id:123, label:sales, year:2010) on clicking of the legend 'sales'.What should i do? I tried listening mouse click event and itemClick event.
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?
This is NOT duplicate of my earlier post (its is slightly different)But this is similar issue with similar error but its not the same error The error I am getting now is below while dispatching the custom event from my custom component
TypeError: Error #1034: Type Coercion failed: cannot convert events::MapEvent@a74ab51 to flash.events.MouseEvent. dispatchEvent(new MapEvent(MapEvent.CLICKED_ON_MAP));
Note: The error in my earlier post is giving below error message
Type Coercion failed: cannot convert flash.events::Event@81ecb79 to com.events.ShopEvent
The difference here are two things, the earlier error is while converting flash event to custom event and now this one is while converting custom event to flash event and secondly, I have no clue why it is trying to convert to the mouseevent where I am just dispatching my custom event with proper listeners.
I have a repeater component with custom event. My repeater components fires custom event holding data. My need is to dispatch event so other repeater components can access data from dispatching component.
Not sure this exist, but worth asking you all: is there a built in method to compute the distance between the current mouse position and a given component? If not, is there a simple way to build a function like this that works for components with generic shapes?
I'm just getting started with custom events in a custom component. And I don't quite have the hang of it, yet. I've got a component with a button in it. When it's clicked, I want to call a function in the main app.
I am using CS3 and have 4 layers and 4 frames on the stage. I load all xml and code in frame 1. Frames 2, 3, and 4 have list and combobox components.
I want to populate the list and combobox components with the xml data from the code in Layer 1, frame 1. But this is not happening because of the load sequence.
I would like to know how to listen for the list and combobox loading and then populate them.
I am working on a AS3 only project in Flex....I tried to listen ENTER event when use clicks enter/return in my textinput box....but it seems not working well...I did try using TextEvent.TEXT_INPUT and it worked fine but not Component.ENTER.
What's the call analogous to creationComplete that happens every time a component is rendered? I want to rerun a function every time the component gets rendered (it has to make an HTTP request, but the url it calls changes each time) and I can't figure out how to do it.
I need to call a component and pass an object. Now I am using event initialize to pass into the method of component but it seem to execute only once as follows. Is there anyway that I can make it call every time it loads.[code]
I am trying to determine what events I need to wait for in a test in order to ensure that my custom component has updated all of its properties. I was using VALUE_COMMIT, but for some reason that isn't working out for me. I want some easy mechanism for tracing every event dispatched from a component. Is this possible?
enter code hereBeen really frustrating just trying to load a swf from a swfloader in Flex and then accessing it's content. I'm sure once I figure out how to do it once then it'll be fine, but I've gone thorugh a bunch of tutorials and somethings not right. Here's my flex code:and the as code:
public function initHeaderSwf():void { trace("INITIATIED");[code]........
Here's the problem: The swf loads, there is no problem there.i see it in my compiled swf. but the complete event doesn't fire. CreationComplete will fire, and then I try, after that, to make a event listener for loading the actual swf, that doesn't fire.I've tried it a variety of different ways with no luck.All I am trying to do is change a text field in the loaded swf.I imagine this might be a problem with the sequence of things loading or something like that, but not sure.
I have a CustomTextInput component based on TextInput (Spark) component. The instance of this class is placed on a popup window (TitleWindow). How can I capture the popup move (dragging the title) event inside CustomTextInput implementation?
MoveEvent.MOVE event of the CustomTextInput itself doesn't work. Of course, I can't access the parent popup window inside the component implementation, because it's a common component that can be used not only on the popup windows.
I have a weird issue (weird because it is specific to one component) with applicationComplete in a fairly simple application. All the UI components are declared in MXML. I can access them all in applicationComplete, but not a spark.components.TextArea component, named taStatus here; it is null in the handler.[code]...