ActionScript 3.0 :: DispatchEvent Versus Function Call?
Aug 21, 2008I'm still wondering which method is the best use:
Event Dispatcher:
PHP Code:
package
{
import flash.events.EventDispatcher;
public class Test
[code]....
I'm still wondering which method is the best use:
Event Dispatcher:
PHP Code:
package
{
import flash.events.EventDispatcher;
public class Test
[code]....
Does anyone know if there is a way to call a dispatchEvent call from inside of a static function?
View 2 RepliesIf i keep aside the loose coupling advantage of Events, what is the difference in the way of working of
1) Simple function call
2) Dispatching an event
How can I get the instance of the class to call the dispatchEvent for the postTrace function.
1180: Call to a possibly undefined method dispatchEvent.
Code:
package {
import flash.display.*;
import flash.events.*;
[Code].....
I'm playing with the event system and my own custom event class for a project I'm working on. I'm wondering if it's better to use obj.dispatchEvent(new CustomEvent(event)) or if I should just use a regular function call.
It seems to me that in most cases when one object is detecting the event and another is responding to it it is better to use the event system so I'm not passing around objects too much.
I was also wondering what the performance hit of using the event vs. the function call is. I'm sure the event is more cpu intensive but is it negligible?
Like most Flex/Flash Builder developers, I have been using the dispatchEvent method to communicate between different classes of an application. And, that works fine, but, I have been toying with a different idea about inter-class communications and would like you to shoot it down, if you can.
Why not have an application "state" class, instantiated as a singleton, which holds the information that is needed by the application's various classes? Examples would be current user and session, currentState of the parent application, selection criteria, data providers, etc. Each class would, of course, have to be aware of this state class. Each class in the application would post its relevant state to this "state" class, and likewise each class could establish listeners for changes to the relevant objects therein.
It just seems to me that, rather than dispatching events, setting up listeners that in turn fire off a listener method, I could instead bind, for example, a datagrid to the state class' relevant data provider, or whatever is needed. In other words, all "listening" and binding is performed against a single state class.
if I have a class I load, import com.pixelator;//import explosion class In my movie I want to run a function when it finishes and dispatches the event below. How do I do that? here is the code from the class
PHP Code:
function completeHandler() {
dispatchEvent(new Event("PIXELS_DONE"));
}
I am trying to adapt to AS3, and I am new to writing packages. I have my external .as file, and in there I have a bunch of functions. I need to call a function written on the timeline.I realize I need to use dispatchEvent, but I'm not exactly sure how. In the package, I currently have:
Code:
public function autoNextPict(e:TimerEvent):void
{
[code].....
I've got a class where I'm using:
o.type = "focus";
o.target = "this";
dispatchEvent(o);
and then focus is a function of an object in the FLA.
I want focus to be in the AS External Class file but it won't trigger.
I'm trying to use ExternalInterface.Call to call a JavaScript function to launch a lightbox window. So far I have this:
AS3:
flash.external.ExternalInterface.call("launchLB", "" + aUrl + "");
JavaScript:
function launchLB(url) {
alert(url);
[Code]....
I get the alert but I can't get the lightbox window to display. When my as code makes the ExternalInterface call I get what looks like a page refresh and a blank browser window.
I have an enterFrame action that I use on a graphic:
[Code]....
Because I want to use the above code more than a few times, I tried to make it a function.
[Code]....
But for some reason the function call does not work when I call it via an action on a graphic where initially the code worked when it was explicitly written and not called as a function.
Code:
onClipEvent (enterFrame) {
fadeOut();
}
why this is not working.I have an application with a new class I just created. The class loads, but will not call it's own internal function.
package com.parkerandkent.components.classic.photogallery {
import caurina.transitions.Tweener;
import flash.display.MovieClip;[code]....
"Test 2" will not fire here.And I get this error message:
CallTag.as , Line 10 1180: Call to a possibly undefined method init.
I need to get a javascript var in my Flash application. I like to be able to just set a variable in the javascript (client constraints) rather than define a function.
Can this be done? I am trying to use the ExternalInterface.call()
AS:
ExternalInterface.call("function(){return window.someVar}", null);
JS:
var someVar = "Test";
This does not work and I suspect it is because the ExternalInterface.call() does not like the anonymous function.
I have a function defined in JavaScript like so:
function fadeBack() {
alert("fadeBack called");
};
I call that function from my Flash file like so:
import flash.external.*;
flash.external.ExternalInterface.call("fadeBack");
This works in both Safari and Chrome, but for some reason Firefox won't ever call the function. Still, I can't figure this out. How can I fix it?
So I have a Movieclip with a Listener listening for MOUSE_OVER, and on mouse over it triggers a function ToolTip.
[Code]...
which triggers the tooltip function but the problem is that... when the mouse is clicked on MC2 showToolTip works fine.. but when I mouse_out of MC2 it runs exitToolTip function from MC shouldnt it run exitToolTip only when you mouse out of MC? how do I make exitToolTip run only when we mouse out of MC rather than MC2 ...
have a node that has an asfunction embedded - won't work. if I change the a href to a web page- it works fine. If I try to call a custom function it doesn't call it at all.
View 1 RepliesI have a function in Flex which has three function in it.
public function update():void
{
A(); \Dispatches a event with Remote Call
[code].......
is it possible to write a function to move an object and then call that function on a clip event for instance
function (bounce){
script;
script;
}
and then call it by saying
on(mouseOver){
this.bounce;
}
is it possible to store a list of params needed for a function in an array and then use that in a funciton call?
[Code]...
or something like that?? Prob have to iterate the array but how do i get the params into the function call? Is this even possible?
How create baseurl function in flash and how i call that function in button script
View 1 RepliesI have this code but I cannot work out how to fill in function parameters based on an array and it's length, see line 7
[AS]
import com.robertpenner.easing.Cubic;
MovieClip.prototype.framesTimeout = function(func:Function, frames:Number, args:Array) {
[code]....
Is it possible to call a function and fill in the parameters based on an array and it's length?
I have an AS3 program that calls a function multiple times. The function must return multiple variables, so I created a class for the function to declare an object containing all of these variables. For example, here's my class:
package
{
public class PER
{
[Code].....
Let's say the calling program calls the function, which returns the variables into data_set1 (where data_set1 depends on input variables arg1, arg2, arg3) using:
var data_set1:PER = function_name(arg1, arg2, arg3);
The calling program does some stuff, then calls the function again, but returns the variables into a new variable name, data_set2:
var data_set2:PER = function_name(arg4, arg5, arg6);
My intention is that data_set1 and data_set2 are different (e.g. not linked together).
My question is, given that arrays are passed by reference, will data_set1 be modified to agree with data_set2 upon the 2nd function call? Why or why not?
I'm using this code to call a actionscript 3 function through javascript
[URL}
and I want to call the acrionscript 3 function from a javascript function, but not on a button action.
actionscript code:
//call to javascript
ExternalInterface.call("sendToJavaScript");
//call from javascript
[Code]....
this is the function i want to turn in to a static function. just dont know how to make it a static function and call it from other classes. i think this would have its own file.
[Code]....
var speed:int = 4;
addEventListener(Event.ENTER_FRAME,MoveRight);
function MoveRight(event:Event):void{
[code]......
How could i call the same function within a function AND when listening for an event?
would something likt this:
[Code]...
I have taken variable in one function and want to use that value in another function.
View 2 Replieslet's say I have 3 functions like this.
ActionScript Code:
function function1(e:event):void{
//code
[Code]....
Can I somehow, stop the enter frame in function 2 with some code in function3? I know that is not the better practice, but in this case is really needful to have a function inside another.
how can i can call a function only when i enter 1 determineted function?
View 2 RepliesI am trying to create a payment calculator and my final calculation is returning this error code. This is my code...
ActionScript Code:
onEnterFrame = function(){
pay2 = (1+(number3/12));
[code].....