Flex :: Event Listeners Not Firing In Code
May 15, 2011event listeners not firing in this code can anybody guide me what is problem with this code.[code]
View 2 Repliesevent listeners not firing in this code can anybody guide me what is problem with this code.[code]
View 2 RepliesI would like to programatically fire an event on a spark checkbox. I have a tab bar which has tabs enabled according to various checkboxes. I am loading data into these tabs. Sometimes tabs 1 and 2 will be enabled. Other times tabs 2 and 3. Other times tab 4 by itself (and all the other combinations). I have tried to enable the VBox (in action script) which is in my view stack but it seems to freeze the application. The VBox enables correctly upon user input on the check box. If I set the checkbox to be selected it does not fire the event and so does not enable the tab.
Is it possible to manually fire an event in Flex. I have tried to see if I can take the checkbox and get the event and fire it. Unfortunately I can only see addEventListener, hasEventLister and removeEventListener. There is no way of getting the events that are already on the checkbox
In my Flash project I have a movieclip that has 2 keyframes. Both frames contain 1 movieclip each.
frame 1 - Landing
frame 2 - Game
The flow of the application is simple:
User arrives on landing page (frame 1) User clicks "start game" button User is brought to the game page (frame 2) When the game is over, the user can press a "play again" button which brings them back to step 1
Both Landing and Game movieclips are linked to separate classes that define event listeners. The problem is that when I end up back at step 1 after playing the game, the Game event listeners fire twice for their respective event. And if I go through the process a third time, the event listeners fire three times for every event. This keeps happening, so if I loop through the application flow 7 times, the event listeners fire seven times. I don't understand why this is happening because on frame 1, the Game movieclip (and I would assume its related class instance) does not exist - but I'm clearly missing something here.
I've run into this problem in other projects too, and tried fixing it by first checking if the event listeners existed and only defining them if they didn't, but I ended up with unexpected results that didn't really solve the problem.
I've had this glitch for a long time, and I've tried several ways to get rid of it, and now that I just recoded everything to see if it was something I did, it's back again! basically, whenever I press space (regardless of whether or not I am listening for a space press [or any key press]), the last function fired by an event listener will run itself again, with the exact same arguments supplied to it in the first time.
For example, if I make a simple button to trace("text"); and take you to another frame. Once you get to that frame you can press Space and it'll trace "text" again! I really have no idea what's causing this, and it doesn't seem to be happening to me in new files. and there's too much code to show you, but I just want to know if anyone has heard of this before or if they have any theories to what's going on.
I have 9 buttons on my site which I wish to increase to 100% alpha when the users mouse rolls over each one, then have the alpha reduced to the original setting of 75% on rollout.If I set the code below for 1 button it works just fine. However, if I repeat this code just changing the numbers for each button, it stops working once duplicated more than a couple of times.Why does it stop working and how can I write this efficiently so it works for all 9 buttons?
Here is the code:-
addtocart1_btn.addEventListener(MouseEvent.MOUSE_O VER, fadeinaddtocart1);
function fadeinaddtocart1(event:Event):void
[code]......
It currently has the following listeners active. When you click a blurb, you will zoom into it. When you click it again (or anywhere on the flash object) it will zoom back out.If you let it idle it will zoom in and out at roughly 10second intervals.There are also keyboard functions that when you click on the arrow keys it will move the camera in various ways. The keys only work in the zoomed out state and are disabled on zoom inThe problem that I'm having is with these. On startup, the keys work fine. If you let it idle and have it automatically zoom in then out, the keys will work fine. However, if you manually click out of a blurb, the keyboard event listeners stop working. I'm not sure why this happens since both the auto-zoom and the manual zoom both call the same function to zoom out.
At first it seems to be that the window is losing focus, since if I click on white space I can use the keyboard again. The problem though, is that when I use an DEACTIVATE event listener to test it, it doesn't show the flash object losing focus. Because of that, I'm not really sure how I would go about fixing this problem.
Code:
package com.jonchau.twitter {
import flash.display.MovieClip;
[code]......
In our app, I am periodically noticing that a particular event handler is not firing. 99% of the time, it works fine, but, every so often, it just dies. How can I find out whats happening? Is the DispatchEvent() not happening/working somehow? Is my listener still listening? Did something else catch the event, and not pass it along so that the 'right' listener can get to it ?
Here's a little bit of the code...
Thats a somewhat pruned down version of what the real code is, but I don't think I trimmed out anything important. The key, as I see it is that we fire up the params dialog, then start to listen for the closed event. Then, we show the param dialogs close function. What happens when it fails is that the trace message "caught close event.." is never generated, and, consequently, the closeHandler is not getting called at all.
I'm currently trying to achieve 2 way binding of an ArrayCollection object. However, the COLLECTION_CHANGE event is not firing.
App.mxml
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
[code]....
I'm trying to achieve 2-way binding with the Booths variable.the COLLECTION_CHANGE event never fires even when I add 2 new items in the Booths variable in the App.mxml
I'm working on a simple view in my app that allows a user to drag an item from a list control and drop it onto a textarea.
Seems the dragEnter event fires just fine, but the dragDrop event does not.
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 HTTPService:
<mx:HTTPService id="scoreService" url="http://" method="POST" result="onResult(event)">
<s:request xmlns="">
<name>{..}</name><score>{...}</score>
</s:request></mx:HTTPService>
And a script for (event):
private function onResult(e:ResultEvent):void {
if (e.result.status == true) {
currentState='...';
} else {
Alert.show("...", "...");
}}
The problem is that none of the event possibilities fires after I POST data to my php.
The problem is with addAnimation()
ActionScript Code:
package
{
import flash.display.MovieClip;
[Code].....
... then it works.
But I don't want the movieclip on the root like that, I want it within main.page1
I have two components in my movie,how to write out the code for the listeners.Is it possible to write one listener that listens for changes in both components or do I have to write a separate listener for each? How would this look like written out?
View 1 RepliesI am using the flex datagrid to allow the user to edit some data. My update process relies on a CollectionEvent of type update. Basically I catch this event package the values and update the database. However, if the user edits a cell then moves to edit a cell in the same row the value is updated but a collection event is not fired. Only when clicking out of the row the event is fired. Has anyone had experience with this. I have heard the datagrid is a little quirky is this one of those quirks or am I doing this all wrong?
View 1 RepliesI am a bit stuck here for the past few days. I have a SWF running in Security.LOCAL_TRUSTED sandbox. I can load my JPEGs and simple SWFs without any problems
[Code]....
I have many buttons in Main.mxml. I'm trying to move the button functionality into a Class and have Event Listeners inside the class respond to Click and call other functions. I have written:
Main.mxml
<mx:Button x="23.5" y="10" label="checker" click="{goListen()}" />
<mx:Button id="btnT1" x="252.5" y="10" label="t1" />
[code].....
I'm working on creating a simple MCV application, in order to understand MVC better. The problem I'm having is registering event listeners. The way I see MVC is that the view dispatches events, the controller listens for these events and acts on them, either updating the model or amending the view. So in my MVC app I have a controller which during initialisation should register all the events that are dispatched by the view. This is my controller:
[Code]...
Now is this the way to do this, and why is it that my controller is not registering the event handlers?
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.
View 2 RepliesIs there some way where I can remove all event listeneres on my components all at once. Expecially when I dont have any prior knowledge of, what all listeners are being attached to my component.
View 4 RepliesI add an instance of this module to the dispay list and then remove it.Will the event listener attached to foo create a leak?A simplified module:
<s:Module creationComplete="init()">
<fx:Script>
protected var foo:Bar = new Bar();
[code].....
I know the flash engine is single threaded so when it receives an event, does it essentially break off, execute any registered event listeners (in no guaranteed order) then return to the current scope?[code]can I guarantee that the current function will complete before any of the event listeners execute? ie trace("Done"); will ALWAYS execute first.
View 3 RepliesDo anyone know how to see the event listeners of any component in the debug mode of the Flex or Flash builder?
View 3 RepliesfileReference.addEventListener(Event.COMPLETE, uploadCompleteHandler);
private function uploadCompleteHandler(event:Event):void {}
Above is one way to add an event listener in Actionscript. By default the callback function needs to have an argument with name event and type Event. Is there a way to declare this function without any arguments :
private function uploadCompleteHandler():void {}
Edit : It's possible to add an event handler without any arguments in mxml. So one student wanted to know, why isn't it possible to do the same in actionscript?
I have some code that is supposed to detect if a movie subsection is currently "active" or "destroyed", and respond to these conditions. When a subsection first loads it sets _root variable "state" to "active". When a new menu item is rolled over, it triggers several events. It tells current movie to destroy itself. On the final frame of the movie subsections they change the _root variable "state" to "destroyed". After the button tells the current movie to play destroy, it begins an on enter frame function that looks for state to be != to "active" (I've tried == "destroyed" here as well). [code]...
View 3 RepliesI have this in my constructor:
[Code]..
The problem is I get Error: Error #2094: Event dispatch recursion overflow. Why does removechild keep getting called if this.parent does not exist? Why doesn't removing event listeners work?
Can event listeners only be added to the class which dispatched the event? I ask because I want to have the logic for the listener on the main class, and the action is dispatched on click from a thumb which is instantiated in a scroller class. Kinda like this:
ActionScript Code:
pseudo code:
class main {
main() {
[code]....
This doesn't work. Why can't the main class listen for an event on the thumb class?
This is my movieclip, its on the root:frame1 code:
Code:
trace("clip()");
stop();
[code]....
I have some code where an event handler listening to Event.ID3 fires twice for an MP3 file. From searching the web, I found a few others asking a similar question, but I haven't seen any response.
Does anybody know what would cause the ID3 Event to fire twice for a single file? My only guess is that the MP3 file contains two versions of ID3 format.
The code looks like this:
Code:
var mySound:Sound;
function setup()
{
[Code]...
An odd thing is happening for me, my eventlisteners only fire off once then they seem to stop working.
This thing is a movieclip that slides up the parent movieclip and another movieclip within mc slides it down. They only work once.
ActionScript Code:
slider.up.addEventListener(MouseEvent.MOUSE_UP, activateSlider);
slider.down.addEventListener(MouseEvent.MOUSE_DOWN, activateSlider2);
var frameBoolean:Boolean = false;
[Code].....
I have a little flash app that I have running constantly on my server (I made it an exe). It runs great for a few days, but then eventually it just stops.
Code:
trace("test1");
var myTimer:Timer = new Timer(5000, 1);
myTimer.addEventListener(TimerEvent.TIMER, getData,false,0,true);
[Code].....
The code above should call the function getData once after 5 seconds have passed. This works 99.99% of the time, but for some reason (usually after a few days of it running) it doesn't call the getData function.
I have verified this through trace statements. When it eventually fails, it traces out test1, test2..... then nothing else. No test3.
I'm assuming I need to add an event listener for the timer object to check if it fails for whatever reason. How do I do this?