ActionScript 3.0 :: Refereeing To An Object - AddChild And RemoveChild?
May 4, 2010
I first noticed it when this function started throwing a 1009 error:
[Code]...
were throwing the 1009 error. Which is wierd on two accounts. First, if I remember right, error 1009 comes about when referering to an object that is not on the stage. Which makes NO sence when getting it from an addChild! Second, this error only starts to occur the second time I use the function.
somewhat understood the basics of adding and removing children, however, I am facing another problem. After using the removeChild Function, I can't seem to add another child.For example:
ActionScript Code: var attachedMC = new (getDefinitionByName("Content1") as Class)() Page.addChild(attachedMC);
For example, I have a function that is triggered by a button click This function loads an external swf.I then set a global variable swfLoaded to true, with the idea of having an if condition that executes removeChild(loader) if swfLoaded is true.When trying to execute removeChild(loader), I get an error telling me that it must be the child of the caller.I've seen the code below, which loads a default swf, but I don't want a default swf - I just want one loaded if the button is clicked, and then if another button is clicked, the original one to be removed before the next swf is loaded.How do I make this code work without loading a default swf, just loading one once someone clicks a button, and then removing it?
var Xpos:Number = 110;var Ypos:Number = 180;var swf:MovieClip;var loader:Loader = new Loader(); var defaultSWF:URLRequest = new URLRequest("swfs/eyesClosed.swf");
I need help with addChild and removeChild.I want to make a two buttons one addChild and other removeChild . Friend helped me a little bit, but I didnt uderstand the script ;]Here is the example script which my friend gave to me. In other words I want to make a button that attached hair and the other that removes.
ActionScript Code:public function changeHairs (newHair: Hair): Hair { Face.removeChild (oldHairs);[code].....
I have a MC that the mouse can drag and slide, when it gets removed from the stage when it hits an out of bounds object. I re add it to the stage at the x,y position it originally started from but when I re add it it continues to slide in the direction it was going before it was removed.
I'm making an application for the iPad that allows me to swipe movieClips that are 1024 x 768.The application starts with movieClip1, movieClip2 and movieClip3 added to the stage.When you swipe to the left... they are to move to the left. When a movieClip is off the stage to the left... I want to removeChild and then addChild the next one in the queue to the right of the visible clip. This will provide a seamless swiping experience.
I am putting together my file right now which is now using visual elements purely added and removed via AS3 (addChild / removeChild) methods.My question is just about the proper time / place to declare their variables.Can I declare them all at the start of the movie (frame 1) and just call them when I need them, or is it better to declare them on the frames that they are introduced on? I guess the question is really, will I ever lose those variables throughout the movie once they are declared?
I have images loading into a single mc container every time i click a button. The images are being loaded (from xml data in a data grid) on top of each other every time the button is clicked. This is the latest Ive been working with and doesnt seem to work
Loader();var reqImage:URLRequest=new URLRequest(data_grid.selectedItem.JPG); imageLoader.load(reqImage); if (imageload.numChildren>0) { imageload.removeChild(imageLoader); imageload.addChild(imageLoader);
as you guys can see it addChild with dynamics and its not hardcoded. difference between adding a movieclip from the library and loading a swf external?
because i cant get this to work. Even tho my code does addChild and removeChild i get error-messages in the output. The movie works fine but it isin't a pretty code
I want to make a two buttons one addChild and other removeChild. Here is the example script which my friend gave to me. In other words I want to make a button that attached hair and the other that removes. Should I make a separete custom class for Hair?
I am doing a project in which I need to open and close MovieClips. I have my Scene1 which loads the first MC (named "page1") then page1 plays and I would like it to unload itself and load the MC named "Page2" and so on up to page 10 ...
On the last frame of the MC "page1" I have this code: stop(); stage.addEventListener(MouseEvent.CLICK, animate2); function animate2 (event:MouseEvent):void { stage.removeChild(stage.getChildByName("clip1")); var clip2:MovieClip = new page2(); addChild (clip2); }
But all I get is this error message: TypeError: Error #2007: Parameter child must be non-null. at flash.display:isplayObjectContainer/removeChild()
I have a ball MC that is a child of a ship MC, and when the ship fires the ball I need to make the ball MC a child of the stage instead of the ship. Here's the code I have (contained in ball.as, this function is called when the ball is fired)
public function prep():void { ship.removeChild(this); screen.addChild(this);
I would like to know the internals of that method, in other words what exactly happens when I call that method. If someone can explian it with a list 1,2,3... would be great. including events..
I'm in the right place for this plea from yet another novice trying to learn AS3 in Flash with a couple of very good books but no one to talk to about it - and in danger of losing hair in the process.
My problem: I have a web site containing 8 pages. Each page is a separate movie clip, and each is in a Labeled frame. My intention is to have an overlay for each of the buttons in the top left panel of the home page. On the positive side I have managed to achieve the dynamic placement of an instance of a library movie clip called "sampleAR" via addChild to overlay on top of my home page. But I can't for the life of me get removeChild to rid me of the wretched thing again. My home page is in frame 1 of the movie labeled "Home". This contains a movie clip with the instance name "HomePage" on the stage. Inside the "HomePage" movie clip is my script sitting at the end where the movie stops in frame 44. The code sits here because this is the only place I've managed to get any kind of result with the following code:
Here's some code I created as an answer to another question. It pulls a library item out of the library and puts it on stage programmatically. No big deal, except that in order to get the image displayed on the screen to actually update, I had to removeChild() and then addChild() it back. Is there another way to force the screen to redraw?
[Code]....
Note that in this example, this code is on frame 1 of the timeline. It _feels_ like imageClip is not a direct reference to the thing that's actually on the display list. However, when I modified my code to replace the reference to the AS variable imageClip with a more direct reference to the element on the stage (imageClip = getChildAt(1)), that made no difference either.
It pulls a library item out of the library and puts it on stage programmatically. No big deal, except that in order to get the image displayed on the screen to actually update, I had to removeChild() and then addChild() it back. Is there another way to force the screen to redraw?
I'm trying to make a basic mouesover and mouseout that will display a help/key box on the screen. I created the help box that will be displayed as a symbol called helpbox. I updated the linkage to export to Actionscript and called the class Helpme. The object I'm using to instantiate the Helpme class is a small graphic called helpcoast. I want the "helpbox" in the new class "Helpme" to be displayed only when the mouse is over the helpcoast graphic. When I test the movie and mouse over and mouse out of the graphic once, I get no errors, but if I mouse over it, then off it, then back over again, I get this error in the output box:
I have a main class that calls and removes screens with addChild and removeChild, these screens are movie clips.My issue lies in these movie clips, each clip is linked to a class - e.g. confidence.as links to my confidence screen.I am trying to add buttons and pieces of text from this class file onto the confidence screen, so essentially adding more movieclips on top of a movieclip that has already been added. I keep getting this error:TypeError: Error #2007: Parameter child must be non-null.I could do with some help figuring out how to add objects to my screens, as I am trying to prevent having everything in one class.
This is something I'm experimenting with, but haven't seemed to figure out... I have several MovieClips, basically the same, only different colors. As each one plays, I'd like it to "overlap" whichever one is already there. Right now I have each button linked to a gotoAndPlay function, but I don't think that will ever get me what I want. You can see how I have it now here: [URL]
Instead of having the content MovieClip go back to all white when a button is clicked, I'd like the preivious one to remain, and get "covered up" by the new one. You continue to see the old color, and the new color overlaps it. I have a feeling I need to use a variable and then addChild, with a removeChild for the old MovieClip after the new MovieClip has loaded, but I'm not getting any good results yet.
I am developing a drag and drop functionality and take a JPEG screen shot of droped objects. my problem is. when i drag and drop an object the object jumps off some distance.. i am unable to clear tat.. Below is my application.as file
All of the bullets are of the "Bullet" class and are stored in an array called "bullets" in the main class. When bullets exit the screen, removeBullet(bulletID) in the main class is called.
private function removeBullet(id:int) { removeChild(bullets[id]); bullets.splice(id); }
In my Bullet class I have an enterFrame listener that traces "stillHere". So as soon as a bullet is added to the main stage using addChild, "stillHere" starts popping up in my output panel.
My problem is that even after I call the removeBullet, "stillHere" keeps popping up in the output panel, which tells me that the object which I tried to delete is still sticking around somewhere in the memory.
I am using removeChild() to remove a MovieClip. And via tests, I can confirm that it's working fine ( stage.contains(mc) returns false ). But the MovieClip still does not seem to be removed, as if the stage is not updated correctly.
I'm working on a project which uses timline animation. The animated objects are involved in a collision detection script.
When they collide with other objects, their timelines are told to stop() and they're removed using removeChild. At this point they have a value of null (I've tested this.)
Strangely however, they invisibly re-instantiat themselves when the timeline animation loops back to frame 1. There's no code telling them to play anywhere in the program. They still have null values, but their collsion code still affects other objects.
I have strange problem. I remove sprite object from container and its not visible anymore but still behaves like its existing. here is how i add object to container:
[Code]...
I think that all listeners and vars has been removed from the object but probably not because GC does not remove the object comepletly. Why object is still at its place ? Is there easy way to check what has to be removed from object so GC can collect it?
If I removeChild an object from the stage can it still be detected by a hittest? I have objects that are tweening off the stage and if they hit other objects they stop their tween i use removeChild to remove objects that I don't want a hittest to occur on which is the nature of my question.
Here's the code I'm having trouble with: function offNav(e:MouseEvent):void { if (mouseX >= 0 && mouseY >= 0 && mouseX <= 36.45 && mouseY <= 325) { TweenLite.to(navPanel,.5,{x:0}); TweenLite.to(home_btn,.5,{x:15.65}); TweenLite.to(work_btn,.5,{x:11.5}); [Code] .....
The problem is with smallImg_mc. Later on when it is clicked, it gets removed using the removeChild(smallImg_mc) command, and my question is how do I signal it through an if statement where it says if (smallImg_mc.visible !== false) { setChildIndex(smallImg_mc,1); setChildIndex(logo,1); } It's causing annoying output errors.