ActionScript 3.0 :: Dynamically Create Variable In External Class?
Oct 11, 2009
I have a movieclip (listBtn) defined in my document class and need to use it in my view class to dynamically create multiple instances of it in a loop. For some reason I'm getting 1180: Call to a possibly undefined method listBtn but can't figure out why since the listBtn is defined as you can see in the view class [code]...
I have 1 class that extends movieclip, let's call it Class0. I have 1 class that extends movieclip, let's call it Class1.
I create an instance of Class0 on stage like : var myClip0:Class0 = new Class0(this, "Class1");
The class Class0 when initializing, will create a new movieclip (myClip1) and add it as child, as an instance of Class1, like myClip0.myClip1. But it's when i create that clip, i want to tell it, it's an instance of Class1, like :
private var myClip1:Class1 = new Class1(this);
Where Class1 could be any class.
How do i pass Class1 to Class0 so it can create it dynamically?? Do i have to use the apply function??
i also write this question in as2 forum, but i need it also for as3i have instance of class "HelloClass" on my main movie :_root.mc.HelloClass.variable1.fullurlso my HelloClass exteds movieclip and has var named Variable1 that also class with var fullurli want to access fullurl string value dynamically , somthing like:_root.["mc"].["HelloClass"].["variable1"].["fullurl"]so i can access every var from external swf
public function addNewMc():void{ var newMC:MovieClip= new MovieClip(); this.addChild(newMC); } public function removeOldMc(newMC):void{ this.removeChild(newMC); }
How can I create a new MovieClip within a method, which can be used throughout the class, without defining it at the top of the class? And for extra points, without using return. I can get it to work, if the first function addNewMc returns the value newMC, and passing that to any other methods.
I'm trying to write a class that will create my movieclip buttons dynamically, and assign some text to a dynamic text box inside it, based on the argument I pass to the method in this class. I've got a movieclip in my library with the linkage shown below - And I've got this so far in its own AS file -
Code:
package com.willgoldstone.tutorials { import flash.display.MovieClip; public class Mybtn extends MovieClip{
[code]....
All I want to do is instantiate a copy of this movieClip in my library and assign a value to its dynamic text field..
I am trying to pass a variable to a method in one of my Classes so I can use it to create the correct movieClip (image).
My Class code looks like this: package { import flash.display.MovieClip; import flash.display.Sprite; public class SlideShow extends MovieClip{ public function SlideShow() { [Code] ....
I am getting the following error: SlideShow.as, Line 30 1046: Type was not found or was not a compile-time constant: Background.
I am writing a code where I am trying to create a sprite variable in one class, and create several new instances of that sprite variable in another that all need to be on the stage at the same time. For example I created a variable like this, var ball:Sprite = new Sprite(), then drew the sprite in the same class that that variable was created in, then using encapsulation (i.e. _myNewInstance:AddNewInstance = new AddNewInstance(ball)) I am trying to reference that variable and create several new instances of it in the "AddNewInstanceClass" through for loops.
I'm about to start a project where there will be a Flash application where the visitor customizes a profile with externally loaded images and texts. Then the visitor needs to be able to download that profile as a dynamically created swf with all that external content baked into the swf.
I have problem with removing dynamicly generated MovieClip in external class. How can I remove it? I'm getting this error:
ArgumentError: Error #2025: The supplied DisplayObject must be a child of the caller.at flash.display::DisplayObjectContainer/removeChild() at SomeEffect/updateMc()
I am making a Thumbnail class which is part of my Photo Gallery Package that I am building with the intent of automatically generating my thumbnails. I do not want to limit myself to just AS3 animations, I would also like the ability to use timeline animations. I have a system using "in" and "out" for frame labels which I find very efficient and I get stuff done quickly. So I created the thumbnails holder MovieClip with the animations and have it linked in my Library, however, when I try to pass it to my Thumbnail Class, I only get one instance and I need to create several instances.
Document Class ActionScript Code: var thumbCont:mcThumb = new mcThumb(); thumbNails = new Thumbnails(thumbCont);
Thumbnails Class ActionScript Code: var thumbContainer:MovieClip; public function Thumbnails(thumbCont:MovieClip,) { thumbContainer = thumbCont; }private function createThumbs():void { for (var i:int = 0; i < aThumbs.length; i++) { [Code] .....
I eliminated most of the additional stuff. What this does is that it doesn't create several thumbContainers, rather it just uses the one. So how would I be able to generate several of them? I can obviously create an Array with them and create them in my document class, but if I can avoid that and have my thumbnail class do it by itself, that would be perfect.
I've rarely used static variables or methods when creating external classes, but I have on occasion, and it's very useful when I need global access to a value. I've seen negative criticism on the use of the "static" keyword, but never understood why. Is there a right and wrong way of using it, or is this not true? I'd like to use it in a context similar to classes such as MouseEvent or TextFieldAutoSize, where there is a list of values globally accessible for identification purposes.
It allows better code readability, and also allows for easy customization in the future. The value of TextFieldAutoSize.NONE is "none", but as long as a programmer used the reference TextFieldAutoSize.NONE and not the string literal "none", Adobe could change the value of TextFieldAutoSize.NONE to be "hahahahaha" and everything would still work just dandy because (TextFieldAutoSize.NONE == TextFieldAutoSize.NONE) is still true even though ("none" == "hahahahaha") is not.
Is there any kind of negative impact on using static variables this way? Or even functions for that matter? I'd just like to clarify this before I go and build a large project around the idea this is perfectly okay.
I need to load an external SWF into a movieclip, and get the name of the SWF from a variable from a class. The variable is called getSWF and is defined as Code: public var getSWF = "movie.swf";
When I trace(getSWF); on the first frame of the main time line it outputs fine. However when I use the following code on the movieclip : Code: var testtest= getSWF; var imageRequest:URLRequest = new URLRequest (testtest); var imageLoader:Loader = new Loader(); imageLoader.load(imageRequest); addChild(imageLoader);
I get the error: 1120: Access of undefined property getSWF. Though if I change the variable testtest to movie.swf it works fine.
I am dynamically loading external SWFs in a Main Fla in response to clicks on a menu.
The loading code is standard and works fine for all of the SWFs except one. When I try to load it I get the following error: Error #2044: Unhandled IOErrorEvent:. text=Error #2035: URL Not Found.
I am certain that the URL to the problem SWF is correct. The SWF itself doesn't load any other SWFs or images. The problem SWF is linked to an external class file and compiled with it. i.e. in the properties panel of the main timeline of the problem SWF's Fla I have entered the path to the external class.
1. there is no problem compiling this SWF with the class (it works fine by itself)2. if I remove the external class from the properties panel and don't use it the resulting SWF imports without a problem into the Main Fla mentioned before So the problem seems to be the fact that the external class is linked in the properties panel. Is this a path problem?
I am trying to create html links from a external xml file to be dynamically added to a text field (im using flash builder)the process i am having trouble is: -Loading an external swf which contains the textfield loading external xml which contains the cdata with links adding the cdata to the htmltext property of the textfield the link is showing correctly, the mouse turns into a hand... but when i click on the link it doesnt work. i have seen a few forum posts similar to this problem but all are using textfield control in flash builder but im trying to add the cdata into an externally loaded swf which holds the textfield.
So i have an external text file organized like this:
/* $file: data.txt */ &title0=Sacrum &detail0=Detail text for Sacrum &title1=L5
[Code].....
There are 28 of these 'title' and 'detail' pairs. The 'title' text is to fill a dynamic text box and the 'detail' to fill another dynamic text box depending on which section the user is mousing over.
My issue is getting the text from the file stored into arrays. For my test loop I keep getting undefined as the stored value, and i know it has something to do with converting a string value to object..
var lv:LoadVars = new LoadVars(); lv.onLoad = handleDataLoad; lv.load('data.txt'); function handleDataLoad (success:Boolean) {
I'm trying to build a Flex AIR app using Flex Builder 3, which I'm just getting started with. In Flash CS4, there's a text field in the authoring environment where you can specify a class that will become the "base" class - your class inherits from Sprite and then "becomes" the Stage at runtime. Is there a a way to do the same thing with Flex/AIR? Failing that, how to create and use an external class?
[Code]....
But that gives the error "A file found in a source-path must have an externally visible definition. If a definition in the file is meant to be externally visible, please put the definition in a package". I can't win! When I put my class in a package, it says I can't do that because it would be nested. When I don't, it says it needs to be in a package so it can be seen.
I have been working on a Flash movie that loads variable data from an external XML file and dynamically displays the item names in a menu which may then be clicked to display other dynamically-loaded content that corresponds to the menu item that was clicked. I have now come to a standstill in the project as there is something I'd like to achieve but simply cannot work out how. This is my first attempt at working with XML in Flash and one of my early attempts at using variables. What I'm trying to achieve is; once the user has viewed the item's content, they can simply click "next" and "previous" buttons to display all of the content for the next or previous items in the XML document.
I know it probably sounds simple and I'm sure some of you could achieve this in 5 minutes (!) but I can't get my head around some of the coding. I assume previousSibling and nextSibling would come into play here as well as some sort of functions which access arrays of data for the previous and next items, but I'm just not sure how to correctly put these things to use. Rather than post my code and example images of the stage up here on the forums, I've created an html page here: [URL]
I'm new to Flash AS3. I started making a game and I am a bit confused. Let's assume that I want to create a game that has multiple levels/modes, how can I do this in an object orientated way?
When i create games in other languages e.g. XNA C#, i create a separate class then create an object of that class within the main class and run the game based on a simple statement.
I am trying to create a basic flash script to load an external swf file using MovieClipLoader class. Here's my code:
var myMCL:MovieClipLoader = new MovieClipLoader(); var myListener:Object = new Object(); myMCL.addListener(myListener); myMCL.loadClip("splash.swf",5);
I simply copied it from a tutorial. Unfortunately it throws an error message as follows:
1046: Type was not found or was not a compile-time constant: MovieClipLoader 1180: Call to a possibly undefined method.
PS: I have CS3 professional in my machine but I am following Flash 8 book. But my CS3 application supports AS1, 2 and 3.
I've been playing around with custom classes. My objective was to create a custom class (Testing) that would create a box when an instance of the class is created. I've tried three different approaches, however only (3) seems to be showing up. I'm just curious why (1) or (2) doesn't work?
Also is there a better approach than (3)? Since at the moment it's been created on _root. I hope the box can only be accessible through the instance. Since I'd like to incorporate the whole idea of public, private, encapsulation, etc.
I have an HTML button that I need to dynamically assign to an AS3 variable when clicked (in order to load an .mp3). I am using externalInterface.call to collect javascript variables - I am just unsure how to change these dynamically when a button is clicked.
Essentially, I've got a MC container that's created dynamically based off an XML file (basically for every <title></title> I've got, it makes a new "card"). Now within the context of each <title></title> grouping I've got <imgs></imgs> in which I specify the path to images that are related.All of that works perfectly, save for the external jpg files actually appearing on the stage. The MC I add them to does, but the external image doesn't.My problem is- I can't add the external images until they're completely loaded (or so it appears). The thumbnail BG I use is blank. So I know for a fact that the thumbnail BG isn't occluding the loaded thumbnails.
I have 14 buttons, and each one declares a variable; example:
[code]...
On the next frame I have another 14 buttons, and on Release I want to create a new variable with the content of _root.competencia; example:
[code]...
Instead Flash tells me this: Left side of assignment operator must be variable or property.Its what Im trying to do possible? Hope somebody can help me, has been 2 days, and I cant understand what is going on, I have tried a lot of ways without positive results, I know I have a long way to go to learn actionscript, Im to new in this!
I have a Main.fla which loads Main.as as its document class. In Main.as I have a public function named "Main" which runs a trace. I also have another .as file called Preloader.as, which also has a public function in it, this one named "Preloader" with simple trace in it. I just cannot figure out how to use Preloader() from the Preloader class in Main() from the Main class. Main.as loads up fine when the SWF loads and traces.
I'm currently working on an advanced preloader and i'm creating loads of different variables etc. based on the percentage loaded. I need the variables to be named Number + percentage, so in the end I will have Number1, Number2, Number3, Number4 etc. How can I create variable names using my percentage variable? Can't seem to find anything that answers my question.