ActionScript 3.0 :: Event.AddedToStage Being Fired Twice?
Mar 19, 2011
I've just been working on a splash page/main menu for my game, and when tracing a value in the function fired when added to stage, I noticed it was tracing twice.After a process of elimination I found it was caused by some text inside a movieclip in the library.
This is literally my first time using MovieClips in AS3, as I generally just render everything manually, but I used one to knock up some quick text.When converting the text to vector graphics, the problem disappeared. Still the same MC being created and added, yet no problem. It was caused by the text.Doing away with MC's completely, embedding the required font and just using manual TextFields is my solution.Tested on 2 different FP10 builds by the way, same behaviour on both.
I am working on Flex project these days and having java background. In my current task, same pop up is opened when two different types of custom events are being fired and I have to hide a button for one event type. So, how i can get event type.
I have 2 files, 1 to dispatch the event and 1 to receive it (of course in addition to the event class itself).
I've done this before with both dispatching and receiving files being mxml, but this time the dispatching file is an actionscript class, and it's not working this time. Is it different for actionscript classes?
Here's a dumbed down version
The dispatching class dispatches the event as soon as it's created.
public class ASClass extends UIComponent{ public function ASClass(){ dispatchEvent(new MyEvents(MyEvents.FIRE_EVENT)); } }
in my main mxml app, I instantiate the ASClass which automatically dispatch the event as soon as it's created and the main mxml app should receive back.
protected function appCComplete(event:FlexEvent):void{ addEventListener(MyEvents.FIRE_EVENT, gotEvent); var asClass:ASClass = new ASClass();
I'm (slowly) learning Flex 4 and working on skinning a custom component that extends SkinnableComponent. The component is all in ActionScript and essentially looks like this:
[Code]...
The issue I'm having is on NULL REFERENCES in the Constructor for the various SkinParts, because they're not created yet. I'm trying to find out when is the best time to access them to assign their .text values. I know I can override partAdded() and add the .text value as each part is added, but I'd rather just listen for some magic event that is dispatched when they're all available.I'm not sure whether or not it matters, but the accountName, accountNumber variables are assigned by using a repeater with a dataProvider on the host component. I'm not sure if that too has something to do with when the data is available to the AccountSummary component - which may also needed to be waited on. I was able to successfully use FlexEvent.CREATION_COMPLETE to assign all my .text values to the SkinParts, but is that the right event/best practice?
I've got this weird problem with Flash in a embed browser in an ASP.NET Windows Application. I've got this Flash Movie that runs in the Windows application and has got a couple of comboboxes. I've added an eventlistener to such a box, but his change event isn't triggerd on some computers. When I click on the combobox it opens up, but when I click on an item in the combobox it closes before he could trigger the change event.
The weird part is that this occurs on some computers, on others it works as it should. And when I load the swf directly in the browser the comboboxes work all the time. So it has something to do with the Windows Application and Flash. All the tested computers have the Flash plugin version 9 and higher (needed for my movie) installed.
I'm loading in a jpeg and sometimes the Event.COMPLETE is never fired. I have a ProgressEvent that traces out the bytesTotal and bytesLoaded... and it goes all the way up until the bytesTotal equals bytesLoaded... but randomly, the Event.COMPLETE is never fired!
ok this seems to look like it should work.. but for some reason the Event.COMPLETE listener for the loader is not getting fired..
does anyone see something that I missed..
i put in trace statements in to see where its not getting to..
I verified this so far..
- the constructor function does appear to add the even listener to the loader.
- Unit3DPreview.load() function gets called (from the parent class) and receives the _path string properly..
- the loader does have an Event.COMPLETE listener at the time of the loader.load() call..
- the renderAnimation listener function never gets fired off.. even though the listener has been added..
there is no IO error.. the image is in the correct location.. I know this because if I remove it .. I get an IO error..
one thing is that there is an instance of this class already placed inside a library symbol that is associated to another class that passes a bunch of data .. the preview image path being one part of it.
not sure if having it be already existing vs me creating it via code would make a difference .. that is something I have not tried yet.
I want to validate the user detail screen and infrom user ifany error when he moves out of flex screen.Basically we have submit button out of flex area and userenters detals in flex screen and submits using jsp header
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.
Now, I know if you click on "trends" then firstView "views.TrendsView" will be shown. Now you are in that view and click again on "trends" (bottom nav bar) which event will flex dispatch?
Using FlashDevelop, I've got a bit of code to detect keyboard events. The problem is, if I run this code from the main class (Main.as) it'll trigger the event, but not if I go to another class.
For instance, I have the main class, and it has this function
addEventListener(KeyboardEvent.KEY_DOWN,onKeyDown); public function onKeyDown(e:KeyboardEvent):void {
[Code]....
There's no message from either class. If I put the event in the second class, nothing happens. All the other events besides keyboard events still work.
the issue i face right now is that there is an item that can be dragged around the screen and if this item is dropped, physics will bring it back to the floor. all good so far. however, when i am currently dragging the item and i right click and choose "show redraw regions" or any other option available in that menu, there is no mouse up event fired, making it impossible for me to simulate the release of the item. i have looked in the googles and the doc:
I have a Custom Event that takes the name of a file uploaded through FileReference and bubbles the variable back up to the parent class. The Custom Event works and when traced in the parent class, it appears the variable came through as well and traces out in the output. However when trying to use this variable in the text field and assigning it anywhere in the parent class, nothing happens, not even an error.[code]
Using flex builder with flex sdk 3.4.0 if the module is remote like url...The READY event is never fired, i don't understand why.Do you get the same behavior? Original code is from url...[code]
What is the event that gets fired when you click on a datagrid column to sort it? I could use that to know which column is getting sorted and hence have a common sortcomparefunction for all columns.
I have a Custom Event that takes the name of a file uploaded through FileReference and bubbles the variable back up to the parent class. The Custom Event works and when traced in the parent class, it appears the variable came through as well and traces out in the output. However when trying to use this variable in the text field and assigning it anywhere in the parent class, nothing happens, not even an error.
I am trying to make an application which will do the video conferencing. I have read some article on actionscript and started making the application. I am capturing image from web cam and copy it in an array which acts as a buffer. Then I am running a timer which pops each image from array and converting it into bytearray and send it via socket. When timer event is fired camera gets blocked and the whole process gets slow down. Is there anyway to do the video conferencing smoothly ?
I am the freshman for flex and actionscript. I want to know when a mobile app initiates, what is the sequence for calling these methods and what are actually they doing separately. I am confused about these functions: creationComplete, activate, viewActivate and addedToStage for begining the app and deactivate and ViewDeactivate for closing the app.
is there any way to know which method caused a certain event to be fired? For example, in NetConnection API, you can have: connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); netStatusHandler is called everytime a Flash Remoting call fails for some reason: how to know which one failed?
I have 2 buttons.There is a MOUSE_OUT event for button 1 and a MOUSE_OVER event button 2.The buttons are right next to each other.Each event leads to a different frame.When the mouse moves from button 1 to button 2, both events get fired, first MOUSE_OUT and then MOUSE_OVER - but the MOUSE_OVER event cuts off the MOUSE_OUT event and doesn't give it a chance to fully execute. To be more clear, for each event, a function is called which has "gotoAndPlay(x)"(x is some different frame number for each)The gotoAndPlay() will go to lets say frame 437 and play exactly 2 frames.But when MOUSE_OVER is fired and it calls my function, it calls the gotoAndPlay() BUT it doesn't get to play the 2 frames.It gets cut off because the MOUSE_OUT gets fired which calls a function which then calls gotoAndPlay() and plays a different 2 frames. How can I allow the first 2 frames to fully play and then the last 2 frames?
I am having trouble wiring up an event listener to a fl.transitions.Transition.
Is it possible to somehow view all the events an object fires? That way I could check I am using the correct event (and possible view better ones to use).
I have a rollOver event on a pop-up button in flex. I want that the menu is opened on rollover. But if the user accidentally goes with the mouse over the component the menu should not be displayed. So on rollOver I want to start a timer (wait for half second) and than check if the user is still on the pop-up button (rollOut was not fired).
My example code so far:
private function rollOverMenu(event:Event){ rollOutNow = false; var shortDelay:Timer = new Timer(3000);
[code]...
The Alert "time is up" is never shown, any ideas why my timer event does not work?
EDIT: In fact, it is working now (behavior changed with updated TweenMax...?!), BUT still, when I zoom with mouseclick, everything goes well. When I zoom with a keypress, the image is resizing... but if the image is not centered, the registration point (set to center of the image) - the image is moving - for no reason...
Different results with the SAME function, no parameters etc.
As you can see, both events call the same function. In this function, I would like to create a new instance of a library object and then hide it, depending on the mouseEvent that fires:
PHP Code:
var ECMBox:MovieClip = new managerBox(); addChild(ECMBox);
On the MouseOUT, I would then like to remove that from the stage as such:
PHP Code:
removeChild(ECMBox);
I did it this way instead of firing two seperate functions because the second function has no reference to the object created in the MOUSE_OVER function and therefore cannot remove it. My question is this: Is there a way to determine in the function that is called, what mouse event called it? If I could get that, then I could set up a condition to create and object or hide the object, depending on what event was fired. Something like this: