02.28.09
Update to AS3 Reference Error #1056
I added another description and scenario to AS3 Error 1056. If you didn't see your solution there before you may have the answer now.
Check out ActionScript 3 Error 1056
Mostly Flash/Flex - Some Interactive Marketing, Photography, and Random Thoughts
I added another description and scenario to AS3 Error 1056. If you didn't see your solution there before you may have the answer now.
Check out ActionScript 3 Error 1056
ActionScript Error 1126 Description:
I got this error from one of my UVU students code. And as promised in honor of her I am thusly naming AS3 Error 1126 the Erin Johnson Error. This error is given, in this case, because a semicolon is used instead of a colon after the parenthesis. A colon in the ActionScript language is equivalent to a period in the English Language and so the
Flex / Flash Error #1126 Fix:
Replace the semicolon with a colon.
Bad Code 1:
function someFunc(event:MouseEvent);void
{
doSomething();
}
Good Code 1:
function someFunc(event:MouseEvent):void
{
doSomething();
}
Related Errors:
ActionScript Error 1084: Syntax error: expecting colon before leftparen. This error is a psuedo error in this case because once AS3 Error 1126 is reslved this error will also disappear.
This should help you resolve Flex / Flash Error #1126
Thanks and as always Happy Flashing
Curtis J. Morley
Every year I am an avid reoslution maker and keeper. I love to set golas and achieve them. It all started in High School when I made a resolution with my best friend and cousin Vaughn Jensen to drink no soda for the entire year. That was the first time that I set (and kept) a new years resolution.
I have many resolutions but I won't list them all here. The ones I will list relate to this blog and to my life as Flash professional.
So here are my New Years Resolutions in no particular order:
And that is the list. Check back Jan 1st 2010 and see how I did.
Thanks and Happy Flashing,
Curtis J. Morley
ActionScript Error 1184 Description:
This error is quite simple. It just says that you have the wrong type of data in your parameter initializer. Or in other words you tried to assign a string where you typed the parameter as a uint.
Flex / Flash Error #1184 Fix:
Match the parameter type to the proper data type.
Bad Code 1:
bob(someValue:uint = "Happy")
{
trace(someValue);//error 1184
}
Good Code 1:
bob(someValue:uint = 5)
{
trace(someValue);//output 5
}
Related Errors:
This should help you resolve Flex / Flash Error #1184
Thanks and as always Happy Flashing
Curtis J. Morley
Description:
Let's break down ActionScript Error 1047 into it's various parts.
So long story short - you are trying to assign a value to a parameter that has to be evaluated. Still don't know what I mean? Check the code examples.
This is actually a really great feature of AS3. Say for example you have an event listener that calls a function. You also want to call this same function without the event. Unless you pass a value in you will get AS3 Error 1136. AS3 allows you to set the Event parameter to null and therefore accept a call to that function without passing in a parameter. function myUtilFunc( e:Event = null);
You can initialize and function with any Compile time constant for example a string like "Happy", a constant like null or an int like 5 but you can not throw in anything that needs to be evaluated like a variable, math operation, an in-line array like [a,b,c] or date.
Flex / Flash Error #1047 Fix:
Remove any variable data and use only constants in the initializer such as Strings, Numbers, Null, etc...
Bad Code:
var init:String = "Happy"
function bob(someValue:String = init){
trace(someValue);
}
Good Code:
function bob(someValue:String = "Happy"){
trace(someValue);
}
or
function multiFunction(e:Event = null){
//doSomething;
}
Related Errors:
This should help you resolve Flex / Flash Error #1047
Thanks and as always Happy Flashing
Curtis J. Morley
AS3 Error 1023 Description:
This ActionScript error is the most terse error that AS3 has provided us. It is nothing like the beautiful description of AS3 Warning 1090
It popped up, rearing it's ugly head like a teenager on Halloween. In most cases this error has more to do with AS3 Error 1021 than it does with an "Incompatible override". The first example below demonstrates this behavior. Example 1 will also give AS3 Error 1021 every time.
The second example is when an "Incompatible override" really is the reason. Method signatures have to match or you will get this error. Basically it means that you have not matched everything up properly from the method/Class that you are overriding. So if you are overriding something that accepts events and you forget to put in events you will get this error. If you give it a different Type you will get this error. Etc...
Adobe gives a good explanation of my second example. They say:
"A function marked override must exactly match the parameter and return type declaration of the function it is overriding. It must have the same number of parameters, each of the same type, and declare the same return type. If any of the parameters are optional, that must match as well. Both functions must use the same access specifier (public, private, and so on) or namespace attribute as well."
Flex / Flash Error #1023 Fix:
Make sure that you do not have duplicate names with an object and a function
or
Match the Method Signature of the soon to be overridden class.
Bad Code 1:
var myArray:Array = [1,2,3];
function myArray () {
}
Good Code 1:
var myArray:Array = [1,2,3];
function myArrayFunction () {
}
Bad Code 2:
override protected function draw(event:Event = null):void
Good Code 2:
override protected function draw(event:Event):void
Related Errors:
AS3 Error 3596
AS3 Error 1021
AS3 Error 1023 (Different error same number)
This should help you resolve Flex / Flash Warning #1023
Thanks and as always Happy Flashing
Curtis J. Morley
AS3 Error 1023 Description:
This ActionScript error is the most terse error that AS3 has provided us. It is nothing like AS3 Warning 1090 It popped up, rearing it's ugly head like a teenager on Halloween. In most cases this error has more to do with AS3 Error 1021 than it does with an incompatible override. Sometimes it realy does mean that you have an override that is incompatible but many times it just means that you have a function that is named the same as
Flex / Flash Error #1021 Fix:
Do exactly what the message says use an event listener instead of the onRelease event that was common in AS2.
Bad Code 1:
function bob () {
}
function bob () {
}
Good Code 1:
function bob () {
}
function jim () {
}
Bad Code 2:
var myArray:Array = [1,2,3];
function myArray () {
}
Good Code 2:
var myArray:Array = [1,2,3];
function myArrayFunction () {
}
Related Errors:
AS3 Error 3596
AS3 Compiler Error 1023
AS3 Error 1023 (Different error same number. This one has nothing to do with error 1021)
This should help you resolve Flex / Flash Warning #1021
Thanks and as always Happy Flashing
Curtis J. Morley
AS3 Warning 1090 Description:
So the other day I opened some AS2 files that I use for teaching Flash Arrays at UVU. I changed a few things in the file and tested my movie. That is when Warning 1090 popped up and I realized that I had missed a few things. AS3 Warning1090 is the most comprehensive and complete error message that I have ever encountered in Flash or Flex. Not only does it give a really clear description but it tells you how to solve the issue. Kudos Flash programmers/writers. Jen DeHaan if this is you - Nice Job!
P.S. This will also happen with onEnterFrame, onPress, onMouseMove, etc... I have only included one example here but it applies to all cases.
Flex / Flash Error #1090 Fix:
Do exactly what the message says use an event listener instead of the onRelease event that was common in AS2.
Bad Code:
joinArray_btn.onRelease = function () {
//Do Something
}
Good Code:
joinArray_btn.addEventListener(MouseEvent.CLICK, joinArray);
function joinArray() {
//Do Something
}
Related Errors:
This should help you resolve Flex / Flash Warning #1090
Thanks and as always Happy Flashing
Curtis J. Morley
AS3 Error 1042 Description:
AS3 Error1042 is actually a really helpful error. It is simple in that it states that you will not be able to access something called "this" at the point in the code you are trying to access it. In other words, you can't put "this" directly inside the package or the class. It can go in any of the functions that are within the Class but no higher.
It makes sense. If you think about trying to access "this" from inside the package or from inside the class definition then you should understand why. Packages are used only to show Flash/Flex where to find the code so there is no "this" in a file structure. Also at the Class definition level this doesn't exist either because the Class hasn't yet run the constructor to make a "this".
Flex / Flash Error #1042 Fix:
Remove the reference to the "this" keyword in your package or Class.
Bad Code:
package com.cjm.teaching{
import flash.display.MovieClip;
trace(this);
public class Ball extends MovieClip {
public function Ball():void {
}
}
}
or
package com.cjm.errors{
import flash.display.MovieClip;
public class MyClass extends MovieClip {
trace(this);
public function MyClass():void {
}
}
}
Good Code:
package com.cjm.errors{
import flash.display.MovieClip;
public class MyClass extends MovieClip {
public function MyClass():void {
trace(this);
}
}
}
Related Errors:
If the reference to "this" is at the package level you will also get AS3 Error 5000
This should help you resolve Flex / Flash Error #1042
Thanks and as always Happy Flashing
Curtis J. Morley
ActionScript 3 Error #1180 Description:
One reason for this this error is because you are using the name of the variable that you are assigning to the Class rather than the Class itself. Adobe also states that this error will only display when "Strict Mode" is turned on.
Flex / Flash Error #1180 Fix:
Make sure that when you instantiate the Object that you are using the Class name and not the variable name.
Bad Code:
var myCustomClass:CustomClass = new myCustomClass();
Good Code:
var myCustomClass:CustomClass = new CustomClass();
Links:
http://www.flashcomguru.com/index.cfm/2007/4/17/Flex-Builder-2-to-write-AS3-code-for-Flash
This should help you resolve Flex / Flash Error #1180
Thanks and as always Happy Flashing
Curtis J. Morley