Actionscript 3.0 :: Accessing SetInterval() ID Created Within A Function
Jan 7, 2009
I am creating a text scroller and am having problems with clearInterval - the text starts scrolling, but it won't stop after I try to clear it upon a button click.
1. I declare a var (uint) equal to a setInterval() call within a function (if the text exceeds the width of the textField)
2. I have a button that "turns off" the mp3 player (swf) and resets all the text fields.
3. I can't seem to access the setInterval ID var from within the click handler.
I have declared the var (uint) at the root level, then set it to setInterval() within the function. Then I tried to access it from the click handler. I thought this would work since it's global at that point, but it doesn't.
Here's a link to the page so you can see how it doesn't work [URL] (you have to click on the last link with the long client name)
Here's the code that's involved with this function (of course this is only the relevant code, but I would post the fla when done for anyone who wants to use it):
Code: Select all//::: SCROLL DISPLAY TEXT
function scrollDisplays():void
{
(trackTextField.textWidth > trackTextField.width) ?
I created a canvas in a function, and in his function I have a CLICK eventlistener. On the click I want to manipulate what's inside the canvas. Will referencing the canvas using the Dictionary class work?
The following code adds 10 instances of circleMC to the stage. Inside circleMC is a dyn text field that increases in number from 1 - 10 so I have numbered circles on the stage.Each circle needs to open an infoBox which will contain variables unique to that box. I can't figure out how to address each infoBox. How would I say something like on circle1 set infoBox1.visible=true?
code: var jurNum:uint = 0; addBtn.addEventListener(MouseEvent.CLICK, onAdd); function onAdd(evt:MouseEvent):void {[code]........
If objects are created dynamically in AS3, using code like this:
for (var num:Number = 0; num<10; num++){ var txtFld:TextField = new TextField(); txtFld.text = 'This is the original text'; this.addChild(txtFld); }
then later, i want to changet the text of one of the TextFields, how can I do that? The only instance listed in the variables is a single instance of "txtFld" and it is the last one that is created. How can I access the others?
I have an application that I am adding movieclips to a container movieclip through a for loop and repeatedly calling myClip.addChild(theNewClip). Now I have a dozen clips in my container and it seems like the only way to access the clip is to use the getChildByName() method and cast it into a temporary clip so I can get at the its properties.
Is this the best and/or only way to do this? Does the old AS2 myContainer["theName"].property not work with dynamically created movieclips? It doesn't seem to work for me anymore.
I have an application that I am adding movieclips to a container movieclip through a for loop and repeatedly calling myClip.addChild(theNewClip). Now I have a dozen clips in my container and it seems like the only way to access the clip is to use the getChildByName() method and cast it into a temporary clip so I can get at the its properties.
Is this the best and/or only way to do this? Does the old AS2 myContainer["theName"].property not work with dynamically created movieclips? It doesn't seem to work for me anymore.
I am able to dynamically create an object on the stage with a function, but I am at a loss for how to access and manipulate the properties of that object from my Main Class.
in my Main Class I have:
ActionScript Code: NLP_addChild.addObject(stage) // NLP_addChild is the other class addObject() is the function
in NLP_addChild Class appears the following:
ActionScript Code: public static function addObject(stage:Stage) { var myCircle:MovieClip = new circle()
[code]....
myCircle displays correctly on the stage, myCircle is correctly assigned an x of 300. But myCircle x property cannot be assigned from my main class.
but when I put MC on stage dynamically via addChild, the first trace gives compiler error while second trace works(error: Scene 1, Layer 'Layer 1', Frame 1, Line 81120: Access of undefined property myParent1)
I have a script that randomly pops out circles all over the stage. However, I want them to disappear once I roll my mouse over them (and only the ones I roll over, not all the instances).So if I have code like this in a function:[code]And then I have a mouse_over function in the same class, how do I tell it to removeChild? Since the stars are instances of the object, they are giving instance names like instance67, which makes them hard to remove.
basically what im trying to do is create a jigsaw game, simple eh! i have nothing on the stage at compile time, only four items in the library. these are four different puzzle pieces with export names of "piece01" "piece02" "piece03" and "piece04". my AS goes like this:
ActionScript Code: var puzzlePieces:Array = ["piece01","piece02","piece03","piece04"]; var len:int = puzzlePieces.length; var pieceList:Array = [];
[Code]....
how do i or what name do i give the addEventListener to? (if that makes sense) to be able to drag them.
I'm trying to build a relatively simple photo gallery where the images are loaded via XML into thumbnail movieclips that have been dynamically generated, positioned and added to the display stack. I used a simple for loop to generate the thumbs and traced the thumb.name to make sure they all had unique instance names. I then added a listener to the thumb mcs in the for loop and created a function that traces the instance name of each thumb mc, to see if all is working, however, every thumb mc traces the same instance name. My question is how can I create the thumbs dynamically in a loop and, essentially, make them buttons that would display the big the full size photo.
Here is my prototype code:
ActionScript Code: for (var i=0; i<12; i++) { var thumb_mc:MovieClip = new thumb(); // Positioning: The xy coordinates are in an array outside the for loop.
Im dynamically creating an instance of a movieclip, call it a game piece. This game piece has 4 frames, each with a movieclip called base(although one is red, one blue, one green, one yellow). When the game piece is created I set the frame to indicate player color. Im also changing the alpha of base to 1.0 when its being dragged, 0.5 when its dropped.
Using the following code, everything works fine if the game piece color is set to the base in frame 1 (red). If the game piece is created and the timeline moved to a frame other than 1, I throw an error when trying to access base.alpha (this would be the second, third, and fourth instances of base in the game piece timeline). Heres the strange part, this is only a problem when the game piece is first created and added to the display list. Once created, even after the error has been thrown, I can access the alpha of bases 2, 3, and 4 in the drag start/stop listeners. Heres a link to the work in progress, and the relevant sections of code (shortened for brevity, t1 is the top left piece on the pallet, others just repeat the same code):[URL]
I've used the GUI to create a rectangle that I turned into a button symbol (SimpleButton). I then edited the button so that it had 4 different button states and a text layer on top. I then created a class definition file for this object so that I could dynamically change the label text (the text layer) when adding instances of this button to the stage.
I was able to create and link a class file (DynamicButton.as) just fine, but when I try to access the text field that I created on the button, I get the error:
"Access of possibly undefined property btnLabel through a reference with static type com.examples:DynamicButton."
when i couldn't get that to work, I decided I'd try adding the TextField directly within the class definition file, using the following code:
The problem is that I can't seem to add the TextField to the SimpleButton, as it's not a display object. So, I tried adding it to the parent of the simple button (and I figured, I'd just place it exactly above the button). But then I get a "null object reference." error.
is there a way to access GUI-created elements from w/i a class definition file? How would I add the TextField to the button using only AS3 inside of a my class definition file?
I need to export the gradient settings of a rectangle created with the Flash editor. Our artist creates a rectangle with the gradient in a .fla. Is it possible to retrieve the gradient parameters from the .swf or from a flash plugin I could write?
I am having problems while creating object with actionscript, I am new to it and I am getting some errors. I am creating my object this way
Code: var myMC:MovieClip = new MovieClip(); myMC.x = 50; myMC.y = 50; myMC.name = "hunterToken"; tCursos.addChild(myMC); And it is created, so far everything's good
Later I try to access the visible property, and I get an error Code: tCursos.hunterToken.visible=false; And I get this error: Code: TypeError: Error #1010: A term is undefined and has no properties. at newSiteHTR_fla::mCursos1_1/go()[newSiteHTR_fla.mCursos1_1::frame1:157]
I have been searching for a resolution to this for weeks but to no avail. I have made a game already where I had a character names mainChar placed on the screen using the Flash IDE. With this method, i was able to access it's various nested movieclips such as mainChar.walk and mainChar.jump. The problem is that I am making a new game where the main character is loaded via external code using hero:mainChar = new mainChar(); in the external file. after this, i would like to check what the current frame of a nested movieclip is. for example, hero.walk.currentFrame. however, by initializing it using the external code, as opposed to my previous method of placing it right on the stage, the compiler is not picking up of hero.walk.currentFrame stating that "a term is undefined and has no properties (error type 1010)". Is there any way for me to let the compiler know that the nested movieclip is there. It's odd because i can state hero.gotoAndStop("walk"), but when i say hero.walk it gives an error, so i know it isnt spelling.
I created a movieclip and linked it to a class called CustomButton. Inside the movie clip is a text field with name btnText. I then created a few buttons with this code:
Code: var newBtn:CustomButton = new CustomButton(); // set properties of new button newBtn.x = INIT_X;
[code]....
So far, so good. Everything works ok and the code sets the text of the new movieclip. Now, I wanted to actually write the CustomButton class and add some properties and eventually do other stuff with it and so I wrote this:
Code: package { import flash.display.MovieClip;
[code]....
On trying my script again, it gives me this error:
Code:1119: Access of possibly undefined property text through a reference with static type String
I'm creating a banner ad that tweens a thought bubble.It has 3 bubbles which tweens from the small bubble(1st one) to the big(3rd)one every 1/2 second with the setInterval function and then Invokes another setInterval which changes the text in the big bubble every 2sec. I got it to work perfectly, but the only problem is that I cant get it to loop through again properly. When I try to invoke the setInterval "animBubble" in the changeText function it doesnt read the clearInterval in the "animBubble" function causing it not to stop once the 3rd bubble has tweened in.
I added a setinterval function to my slideshow.Prob is when the slideshow reaches the last pic it returns to pic1 goes to pic2,... but after the second loop it starts mixing the wrong pics for the wrong number.I guess I did a mistake in the if statement(if (nextSlideNode == null)...). can someone solve this for me.
See following code below. Also how can I stop this animation. I did something like learinterval(advance); but that did not do the trick.
ok how and where do i put the setInterval script if i want to execute the "animateThumbsToLeft" function for 6 times and inbetween each time have a delay of say half a second..
how to clear the interval in this code? I'd also like to know if there is a better way of firing makeStars() than using setInterval in a function - like I'm doing. I've looked at the Kirupa tutorial and I'm not seeing what should be done.
Basically, this attaches a number of stars within the Stage width and height properties. When the browser resizes I rewrite the stars to the screen with the new bounds. But I can't get the interval to stop, so the stars just keep getting replaced - disappearing and relocating abruptly.
It all works great outside of the resizeIt() function, but once inside she goes down hill from there. A couple of things I need cleared up (pun intended) are:
1. Am I creating a new interval each time resizeIt() is executed?
2.What is the scope of the interval(s), and does how you access them change depending on where you are in the code, or are they more global?
stop(); //number of stars to make var numstars:Number = 100; _root.attachMovie("background","bkgd",this.getNext HighestDepth());
I have a function on my script that attaches a movieclip on a specific position and then it duplicates it several times. This movieclip has a code in order to move across the stage randomly. When I try to use SetInterval to repeat this function two weird things happen: the movieclips don't duplicate over that specific location (they appear on x=0,y=0) and if I set the location only one duplicates and the rest don't. My question is: what can I do to repeat the function every 2 seconds exactly as it is the first time it runs, without the objects not duplicating or moving from the original location?
Here's the code: meteoros = function () { this.attachMovie("asteroid","asteroid_mc",this.get NextHighestDepth());