ActionScript 3.0 :: AddChild Not Working In Some Classes?
Oct 8, 2010
I want to create a class named Principal which will be imported to the stage. This class Principal imports another class named Menu. And the application should do the same for any other 'division' of the website (content, footer etc).If i use the addChild in the Principal class, it works well. If i do the same in Menu, doesnt work. I cant 'return the box' to the Principal class and append the child there, but this will crack all the stuff.Now, the code:
I just wanna add an image from my library on the stage and have an event listener on it so when i click on it, it will do something. imgFromMyLib is already set to the image i want from my library.
I'm having a problem adding a library clip to my stageI can do no problem if I have a testFLV.fla that has a library clip called test_clip with the linkage set to: com.attach_clips.Clip.
I have gotten the AR tutorials from [url]....and are having fun with the flarsquidderkit for multiple pattern detection.However I would like to have a start page, and a high score page for the game based on this, and have tough time figuring how to make the timeline code works for this.
flarsquidderkit have extended papervision3d and has its own 3DdisplayObject, and the flash's MovieClip addChild() is not working.how to extend the movieClip class when my document class has already extended another super class,and also if I can control the score via timeline instead of dumping every single thing in to the document class?
1180:Call to a possibly undefined method AddFrameScript Code: Select allpublic class MultiFLARExample extends PVFLARBaseApplication {
I usually, use SWF Protection, to protect my swf's from decompiling. It also adds a load bar to the swf.
The problem is that I have codes like this:
logo= new marca(); parent.addChild(logo); logo.mouseEnabled=false;
I use parent, because I need to put the movie clip above everything, because my application allows the user to add a lot of things to the stage, so a don't want anything covering the logo.
The application works well while unprotected, but If I protect it using SWF Protection, then, I get just white screen. Nothing appears after loading.
Is there another way, to put a movieclip above everything, without being necessery to add a ON ENTER FRAME LISTENER, to update the movieclip deph, to keep it above everything?
What I describe here is not correct. My full code had some other things in it that was the reason I couln't see mc2. The code described under is actually working!
I have custom class (MyContainer) that extends Sprite. Then:
Code: var mycon:MyContainer = new MyContainer(); var mc1:Sprite = new Ball(); // Ball is a sprite in my library var mc2:Sprite = new Ball();
[Code]....
it works, but I dont want that, as MyContainer has custom variables and functions I use. A simple: if (mycon is DisplayObjectContainer) evaluates to true.
I'm having a problem adding a library clip to my stage I can do no problem if I have a testFLV.fla that has a library clip called test_clip with the linkage set to: com.attach_clips.Clip.
import com.app.views.mediaDisplay;import com.attach_clips.Clip; public class FLVTest extends Sprite { private var _mediaDisplay:mediaDisplay; public function FLVTest() { this._mediaDisplay = new mediaDisplay(null); var clip_1_mc:Clip=new Clip(); var clip_1_mc:Clip=new Clip(); this.addChild(clip_1_mc); clip_1_mc.x=100; }}
If I use the same concept in my mediaDisplay class, the clip isn't added to the stage. Obviously it's got to be a scope issue since 'this' in the first examplerepresents the .fla itself but in mediaDisplay this doesn't have a stage object.
package com.app.views { import flash.display.Sprite; import com.attach_clips.Clip; public class mediaDisplay extends Sprite { public function mediaDisplay(attachControls:Sprite) { var clip_1_mc:Clip=new Clip(); this.addChild(clip_1_mc); clip_1_mc.x=100; }; }}
how I could 'attach' test_clip to the stage from mediaDisplay?
I'm working in this website so to avoid getting an error for adding event listeners to the buttons when they are not on stage i dispatch and event in the last frame of the animation, event that is going to be listened by the document class. Until there everything works great but when I try to dispatch an event from the document class to the sound class, it doesn't work.
For some reason I can't get this nested set of functions to work, it executes the first tween and the tween invoked after motion of the first is finished but it doesn't ever get to the third!
ActionScript Code: var t1:Tween=new Tween(p1,"rotationY",Strong.easeOut,90,0,50,false); var t1x:Tween=new Tween(p1,"x",Strong.easeOut,-900,0,50,false); t1.addEventListener(TweenEvent.MOTION_FINISH,onMotionFinished);
I'm working on a lot of different flash applications Most of those applications are visual and involves the main stage.I started oop a while ago and i got to a point that %99.9 percent of my code is extracted to different classes.There is one thing that repeat on a regular basis on all of my apps, passing the Stage variable to the different classes....It's working great but it doesnt feel right that i need to pass the main stage as a variable between the different classes,is there a better way to access the stage from external classes ? can i make the main stage a static property and access itwithin all the objects in the application ?
For some reason Flash Builder 4 doesn't autocomplete any more for new projects I create (either pure Actionscript or Flash Pro projects). But for previous projects it still works fine.For instance when I go to create a new actionscript class, when I click browse next to Superclass there are only TWO classes that come up. EventDispatcher & Sprite. Where have the rest of the classes gone?
When I try to type inside the class.. ie var mc:MovieClip... as I'm typing MovieClip nothing comes up any more.. pushing ctrl+space doesn't bring up a list of classes either. Importing classes, no code hinting comes up at all.I haven't changed anything in Flash Builder between now and when my previous projects were created.
I created the code below which works as it should using the main timeline actions in AS3 - now, for my project I need this to work in AS3 using class files (basically I'm creating an app which uses pages as class files. This is intended to go on the 2nd page.for some reason though when I've copied it into my project and instantiated it when the page loads, even though all traces say that the squares should be there - they are not! The best I've had so far is one square in the final position![code]
I'm trying to have a class file which can add objects to the stage via addChild; however, when I call addChild from within the class file, I get the error "1180: Call to a possibly undefined method addChild." I've tried importing flash.display.* and that doesn't fix the problem. Does the class file have to extend Sprite or MovieClip to be able to add objects to the stage?
I have downloaded Box2d ([URL]) and created a project that looks like this: [URL]. catalyst is the green cube and it has the base class "shapes.box", it is inside "world" which has the base class "wck.World". What i want to do is to add another "catalyst" from the library inside "world" when i click on add_btn. I tried to accomplish this by this code:
[Code]...
Symbol 'buttons', Layer 'Actions', Frame 1, Line 41061: Call to a possibly undefined method addChild through a reference with static type Class.
The newMC doesn't show up.If I add 'parent.' in front of the addChild then it appears.mc_LibItem has a base class of "flash.display.MovieClip" and is exporting for ActionScript and on frame one.For grins I created a new .fla and began messing around with the same addChild idea and it worked.
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);
I have a main "shell" swf which, by clicking several buttons, will load/unload various external swfs into a Placeholder_mc which resides on the main timeline in Shell.swf In the documentation and tutorials I've seen a couple different methods, and I'm not sure I quite understand the difference, or at least the reason you would use one over the other...In the 1st method, you can just add the Loader object using the addChild() method:
Code:
var myLoader:Loader = new Loader(); var myURLRequest:URLRequest = new URLRequest("ExternalFileA.swf"); myLoader.load(myURLRequest); Placeholder_mc.addChild(myLoader);
This will apparently add myLoader to the display list once it has completely loaded.The 2nd method, you supposedly can add the Loader.content; however, it appears you can only do this once the content has completed loading, so you need to incorporate an event handler with the contentLoaderInfo object:
Code:
var myLoader:Loader = new Loader(); var myURLRequest:URLRequest = new URLRequest("ExternalFileA.swf"); myLoader.load(myURLRequest);
[code]....
What are the pros/cons of adding the entire Loader object, as opposed to the Loader.content and vice versa?
I've worked wioth sub classes so I know how they work but I always work with everything all in one folder which can get messsy when there are a lot of classes to work through. So i started to make folders inside of my main folder but it's not working. Thought it may be to do with package names but as far as i know, for the whole "classes in separate folders" things that's how they are supposed to be.
The examples I'll use don't do anything - they're classes without ANY members - no variables, methods, anything.
Let's say I extends Sprite and call it MySprite.
I save it in test.core
[code]...
Now I create another custom class called MyWindow that extends MySprite.
I save it in test.windows
[code]...
Then I create another class that extends MyWindows (the example I'll use is a document class - but that doesn't matter - I've tested using an instance too).
[code]...
Notice that I'm not even trying to instantiate the helper classes - just having them there throws the error.
If there is only a single helper class, everything runs fine.
Also note that - as far as I can tell - this only happens when extending one class from another package, then extending that class with more than one helper object.I'm pretty sure there's no namespace bumps or typographical errors, as this is a very pared-down version of the original application.
EDIT: seems the problem exists even without the crossing packages - even extending MySprite in the document class with multiple internal classes generates this error.
I am creating a library in AS3. Inside the library I make use of a bunch of classes/packages that need not be exposed to the end user of my lib. I want to only expose one of these classes.
I guess my questions are:
1) How are libraries commonly distributed in AS3?
2) Is there a .jar equivalent in AS3 that developers can include, but will only have access/knowledge of the classes I've declared as public?
I have an actionscript project which uses visual symbols from an SWC. I have a CheckoutButton which has the following class associated with it (compiled into the SWC in Flash CS3).
I'm trying to import a class from a class that is located in another folder. How do you move up a directory? Using./ or ../ doesn't seem to work. Essentially I want to access a TweenLite Class but not from the document class. My class is at com/myName and the class I want to access is at com/TweenLite. import ../TweenLite doesn't work... I realize I could just copy and paste the entire Tweenlite folder again, but there's got to be a less duplicative way of doing this..
inheritance and building classes from other classes.
I have 3 classes: gfxRoomText - changeable colour gfxRomInter - changeable colour - interactive gfxRoomImg - interactive - only image / no colour
The first two incorporate the same text field and functions to change colour. The second and third incorporate another class to interactive with. What is the best way of creating these classes using inheritance and how?
I have to use many custom classes for a project, each class includes lots of elements(methods,properties) and I generally forget their names when coding. Is there any editor which I can enumarate the elements of my classes after pressing "." like Flash's built in classes?