I have run into a strange and annoying problem since updating to Flash Professional CS5.5 on my work computer.Sometimes, seemingly randomly, Flash stops compiling things correctly. I Test Movie by hitting Cmd+Return and it just displays what's on the stage, frame 1. The document class is never initialized, no errors at all, no trace statements print out; it acts as if there is no code at all. After this happens once, it will continue to do this until I restart Flash, which fixes the problem. However, restarting Flash every 10 - 15 minutes is very annoying.It seems to happen regardless of what project I'm working on or what state the project is in (i.e. if the code contains errors or not). All of our projects use external AS3 classes (no code on the timeline).
I have a TextField that uses a stylesheet and gets its text as htmlText. That text is read from an *.xml file with the neccessary CDATA tag. The htmlText is read correctly (I have a debug output to check that), and when displaying the .text attribute, it shows line breaks as expected. multiline, wordwrap and condenseWhite are enabled. No AutoSizing is done, instead I set width and height of the field manually.
But the text it actually shows on the screen is all shown in one line, with multiple lines being drawn in the same line. It also seems to interpret the html correctly, as the words with '<b></b>' around them are bold. Only the line breaks are not working. The height can't be the problem as I set it manually to a value high enough, and debug output shows that it really has that height.
This only happens when viewing the *.swf online and only with empty cache. When I press F5 in the window, the TextField works as intended. So it works offline and when it has already been loaded.
But the creation, scaling of the TextField and filling the TextField with text is all done in the same function, without any breaks so I really don't know how the cache could possibly affect this.
I have a symbol in the Library with a Base Class that extends the MovieClip Class and adds some additional functionality. I want to be able to export this from the Library by right clicking on the symbol and selecting Export SWF. I was hopping this would essentially give me the same results as if the symbol contents was on the main timeline and I had declared the Base Class as the Document Class. When I import this SWF using the Loader Class it seems to loose all of Base Class functionality and think of itself as a MovieClip.
Looking at the below sample code, the alpha property is correctly set but the param1 getter is unaccessible. What the hell is going on?
I have a FLA (say Main.FLA) document class with a child MovieClip on the stage: into the child MovieClip I load other swf files: each of the files contains its own Document Class (every swf is a somewhat independent application, say quizzes and so on).For some reason I must use the Main document class to store data (scores or so) from the child swfs loaded into the Main swf. HOW do I reference the Main class? I can't find a way.[code]and dispatch an Event this way from the loaded swf document class to the Main class:[code]Now, first of all I don't know if this could even work. Secondly, I tried to make it work by adding an event listener to my Main class but id did not work.
So I had a working .fla, with a document class package in the same directory. Everything was fine, until moving both to a new directory, now the fla cannot find the document class. WTF?
(Spoiler alert: It's not an issue of my package statement not reflecting the location of my class file.) When I have a class linked to a MovieClip in my library and that class takes an argument in its constructor method. That class will compile properly ONLY when it's located in my top-level directory (same dir as the .fla and Document.as files). If I move that class to a deeper directory, say com.place, the compiler will generate error "1136: Incorrect number of arguments. Expected 0.
Using Flash CS5 Professional I have created a symbol, dragged it onto the stage, and given it an instance name of GreenLight1. If I want to make this visible from the document class, I can simply do the GreenLight1.visible=true; and poof it's good to go when I test the file. As long as I stay in the document class I am good to go, but now I'm trying to move to another class and hitting ALL kinds of trouble just trying to get Flash to allow me to access this simple object. All I am looking to do is have this GreenLight1 go invisible (visible=false) when a certain condition occurs in this new class and Flash just won't let me access GreenLight1 at all. Things I've tried thus far:
stage is passed to the class and is referenced by _stage and is working just fine when I do _stage.addchild or anything like that. So I have tried "_stage.GreenLight1.visible=false;" and I get "ReferenceError: Error #1069: Property GreenLight1 not found on flash.display.Stage and there is no default value." My document class extends Sprite, so I figured I'd try the root function. So I tried "Sprite(root).GreenLight1.visible=false;" and I get "1119: Access of possibly undefined property GreenLight1 through a reference with static type flash.display:Sprite." I tried to create the Resource class as described therein. To which I came across the same problem that I started with in that it doesn't know what GreenLight1 is to begin with so I got "1120: Access of undefined property GreenLight1." Here is my code for Resource.as (am I supposed to pass something to this class from the document class?)
I am using the Loader class to load 3 external swfs: sharedTopics.swf (does not have a document class) fonts.swf (document class is FontManager) main.swf (document class is Main) The same loader is used to load all 3 assets.
I have a rather silly question but as3's document class always gets me confused.I have a public method on my document class. I want to call this method from another class that is instantiated from within an object in the library of the flash file (the same one on whose document class I want to call a method).
I have a Document class that instantiates a class named Other. I need to call a function in the Other class from the Document class.I'm getting this error: Call to a possibly undefined method OtherFunction through a reference with static type Other.I have read online that you need to use make the functions static or use a getter function but I'm unclear how to do that. I haven't been able to make it work and I feel like i'm missing something fundemental with this problem.below are simplified versions of the classes.
I have a document class called Main.as In the class constructor I have the following listener:
enter code here var listeningFORModeChangeToStudent:Sprite = new Sprite; listeningFORModeChangeToStudent.addEventListener(TellAllModeChangeToStudent.STUDENT,exp); addChild(listeningFORModeChangeToStudent);
[code]....
In a third class I make a call to the despatcher in the previous class:
enter code here var ThisTellAllModeChangeToStudent:TellAllModeChangeToStudent = new TellAllModeChangeToStudent; ThisTellAllModeChangeToStudent.tellAllModeChangeToStudent();
I have trace statements in eveything and from this I know the despatcher in TellAllModeChangeToStudent is being called.The problem is that the listener in the main.as is not calling the function exp.I cant see why and I dont know how to check if the listener is actually seeing the dispatch event?
I want to use some assets ( buttons, etc. ) I'm creating in flash in a flex actionscript project. Since all my assets are bellow 10K, I'm not planning to load a swf ,wait until it's loaded and create the interface. I want to use a swc and just instance the clips I need. Also, I want my Button class to have some extra properties, and this is where the problem occurs.
If in the Linkage Properties in the Flash IDE I add a reference to a custom Button Class and trace a child of the Button MovieClip, I get the right trace. If then I create a Button, in the Main class in Flex, using the generated swc file and trace the same child of the Button MovieClip, I get null. Why is that ? Is there anyway to get around this ? I've considered using the Flex Component Kit, but since I'm working on a simple actionscript project and I'm not using the Flex framework, I see no point in using the Component Kit at this point.
I'm using Flash Develop to build an as3 application using the Flex compiler. In the constructor of a particular class I have written the following code
Code: //constructor public function Test(par1:int, arr:/*int*/Array = [1, 2]){ <----- compiler shows error here
There is probably no way for this but does anyone know a method of excluding certain functions from a build by use of a meta tag and or compiler option?I want to expose some functions for testing but not have them bloat the application on production. I could create separate testing classes and test for a complier directive or option and only load them if necessary but I like the idea of having the test function on the actual object (in the class).
I am having a problem with a scrollbar I created when I use an external preloader. The scrollbar is defined in an external class and works just fine when I compile that SWF and also when I view it. When I load the main SWF through the preloader, I lose any functionality on the scrollbar. Its like the preloader SWF strips the scrollbar class definition from the main SWF. Is this possible? Does anyone know what's going on here?
I stumbled upon this while trying to customize the tree component following the example on the LiveDocs, see [URL].. To see the problem, do the following:
PART 1: 1) create an empty test.fla file 2) put a tree component on the stage 3) convert it to a symbol named TreeNavMenu, export for Actionscript as TreeNavMenu
In a tutorial I find a statement "In the Document Class text box in the Property inspector of flash document, write Test1" But i didnt find that document class textbox. Im using flash CS3. Where it is.
Is there a way I can load a swf file but not automatically instantiate it's DocumentClass? Instead I want to do something like the following: protected function mainLoaded(e:Event = null):void { trace('mainLoaded'); var main:* = this.mainLoad.createClassByName('Main'); trace(main); } Where mainLoad is an instance of CasaLib's SwfLoad and createClassByName is the equivalent to loaderInfo.applicationDomain.getDefinition(); The thing is that when my swf finishes loading I can see it is created, because of some trace calls, although its obviously not added to the display list.
I got a little class and all works fine. Then I add it in Document Class and puff, Error 1034 happens.
Error #1034: Type Coercion failed: cannot convert flash.display::MovieClip@2be9dba1 to fl.text.TCMText. at flash.display::Sprite/constructChildren() at flash.display::Sprite() at flash.display::MovieClip()
I'm having some trouble with using a Document class in Flash CS3 that is an extension of another class. When I do this, I can no longer make references to MovieClips with instance names on the stage.Here's an example. I have a class called Minigame that extends MovieClip and then a class Shooter that extends Minigame. So the relationship looks like:MovieClip <-- Minigame <-- ShooterI want to use Shooter as my Document class in the Flash file Shooter.FLA. However, when I do this, I am unable to directly access any instance names of MovieClips on the stage of Shooter.FLA from Shooter.as. In other words, if I try to write the line:var mc:MovieClip = this.instanceName;in Shooter.as, I get the error:1120: Access of undefined property instanceName.
I have a App.fla file on a path and a App.as file on the same path. On the Class field I put "App" and on the ActionScript Settings Source path there is "." which means the same path of the .fla file, right? I open the App.fla file and click on the little "pencil" icon in order to edit App.as but then Flash whether tells me there's no class file associated or it opens a new ActionScript file.
So I can't do nothing , I even copied all code into the App.as , and pasted into the new ActionScript file it generates when I click the little pencil button. It still cannot find the god damned class. A little detail, I'm using Mac OS X 10.6.2. I've been working full time with flash on a Windows and that never happened to me before. That hasn't happend to me on Mac either (though I have hardly used it to do FLASH/AS).
From a tutorial page, I manage to built this flash page with xml capabilities. But when I add more scene to the flash page, I have errors like this.
TypeError: Error #1009: Cannot access a property or method of a null object reference. at MyContent/init() at MyContent() TypeError: Error #1009: Cannot access a property or method of a null object reference. at MyContent/onComplete() at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at flash.net::URLLoader/onComplete()
How do I edit the "MyContent.as" file so that I can add more scene to the flash. I understand that, once i put the "MyContent.as" in the document class, it will load immediately, is there any way to tell it to load only in scene 2 (which is where the xml is needed).
I'm working on this small project to demonstrate how flash works to a few friends and I am trying to make a small avatar have some animation and upon mouse roll over grow and after removing mouse the avatar will shrink. There is also supposed to be a message displayed over the avatar and upon clicking the avatar the message changes. I have the avatar shrinking/growing thing done and its working fine and I also have the message to be displayed but I cannot seem to link the two into one actionscript file so they both appear at the same time.
Here are the codes: i) for the avatar shrinking/growing package { import flash.display.MovieClip; import flash.events.MouseEvent; public class U1A3_Stickman extends MovieClip { private var _origXScale:Number; [Code] .....
I've tried to simply insert the document class into the flash with the avatar shrink/grow code but it's not working.
in a previous discussion i got some help with randomizing the position of the "appeaance" of an mc on the stage [URL], with the code being only in the Flash Pro file. Here, i am asking for help in randomizing positioning using Math.random but using a document class, to avoid rewriting the code for numerous movie clips that i have in the library. The movie clips in the library begin and end with approximately 15 blank key frames: they have 2 layers, one for action script and one for graphics (which are also movie clips,) while the AS layer in movie clip is longer than the layer containing the art, on both ends, beginning and end, so the effect is of bubbles popping up and appearing on the stage in random positions.
The movie clip symbols in the library have a base class popBubble.as, which works to removeChild(this). However, using RandomPosBubble.as in the document class for the flash file, i am getting a script error -
I have a "box_mc" movieclip on the root of my stage and I need to select it from within my Document Class. I thought Stage.getChildByName("box_mc") would work, but it just returns null.
In Flash CSn/AS3 you associate a Main class with a flash file which when loaded in the flash player "automatically creates an instance of the program's main class."I'd like to know how to pass arguments to the main class, since you don't write it yourself (you put its name in the Document textfield in the IDE).