Hi.
I need some help.
I have this source code.
My problem is that i get the #2007: parameter must be not null error whene I add the _label1, _label2, _label3 childs. It is at the end of this source code.
package com.roytanck.photowidget
{
import flash.display.Sprite;
import flash.display.MovieClip;
import flash.display.BlendMode;
import flash.events.*;
import flash.events.MouseEvent;
import flash.net.navigateToURL;
import flash.net.URLRequest;
import flash.display.Graphics;
import flash.geom.ColorTransform;
import flash.display.Loader;
import flash.filters.BitmapFilter;
import flash.filters.BitmapFilterQuality;
import flash.filters.DropShadowFilter;
import flash.filters.BlurFilter;
import flash.text.TextField;
import flash.text.Font;
import flash.text.TextFormat;
import flash.text.TextFieldType;
import flash.filters.GlowFilter;
public class Thumb extends Sprite {
private var _label1:TextField;
private var _label2:TextField;
private var _label3:TextField;
private var _arhat:Sprite;
private var _szamhat:Sprite;
private var _back:Sprite;
private var _mask:Sprite;
private var _node:XML;
private var _cx:Number;
private var _cy:Number;
private var _cz:Number;
private var _holder:MovieClip;
private var _img:Loader;
public function Thumb( node:XML ){
_node = node;
// create a holder mc
_holder = new MovieClip();
addChild(_holder);
var sorszam:String = new String (_node["@sorsz"]);
var _label1:TextField = this.createTextField(-47.5, -45.5, 20, 20);
_label1.text = sorszam;
_label1.selectable = false;
_label1.textColor = 0xFFFFFF;
var _label1TextFormat = new TextFormat();
_label1TextFormat.bold = true;
_label1TextFormat.size = 9;
_label1TextFormat.font = "Lucida Sans Unicode";
_label1TextFormat.align = "center";
_label1TextFormat.tabStops;
_label1.setTextFormat(_label1TextFormat);
var ajnev:String = new String (_node["@nev"]);
var _label2:TextField = createTextField(-35.5, -35.5, 70, 70);
//ajnev=ajnev.toUpperCase();
_label2.text = ajnev;
_label2.selectable = false;
//_label2.embedFonts = false;
_label2.filters=[new BlurFilter(1, 0, 10)];
//_label2.blendMode = BlendMode.SUBTRACT;
_label2.multiline=true;
//_label2.type = TextFieldType.StaticText;
_label2.wordWrap = true;
_label2.textColor = 0x0099FF;
_label2.antiAliasType = "advanced";
var _label2TextFormat = new TextFormat();
_label2TextFormat.bold = true;
_label2TextFormat.size = 6;
_label2TextFormat.font = "Lucida Sans Unicode";
_label2TextFormat.align = "center";
_label2TextFormat.tabStops;
_label2.setTextFormat(_label2TextFormat);
var filter:GlowFilter = new GlowFilter(0xFFFFFF, 100, 2, 2, 10, 1,false,false);
var filterss:Array = new Array();
filterss.push(filter);
_label2.filters = filterss;
var ar:String = new String (_node["@ar"]) + " Ft.";
var _label3:TextField = createTextField(-37.5, 23, 75, 15);
_label3.text = ar;
_label3.selectable = false;
_label3.textColor = 0xF74300;
_label3.antiAliasType = "advanced";
var _label3TextFormat = new TextFormat();
_label3TextFormat.bold = true;
_label3TextFormat.size = 7;
_label3TextFormat.font = "Lucida Sans Unicode";
_label3TextFormat.align = "right";
_label3TextFormat.tabStops;
_label3.setTextFormat(_label3TextFormat);
_arhat = new Sprite();
_arhat.graphics.beginFill(0xFFFFFF, 0.6);
_arhat.graphics.drawRect( -37.5, 25, 75, 10 );
_arhat.graphics.endFill();
_szamhat = new Sprite();
[Embed(source='test.jpg')]
_szamhat.graphics.beginFill(0xFF9933, 1);
_szamhat.graphics.drawCircle(-37.5, -37.5, 8);
_szamhat.graphics.endFill();
// get and display the thumbnail image
_img = new Loader();
var urlReq:URLRequest = new URLRequest( node.toString() );
_img.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
_img.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
_img.load(urlReq);
_holder.addChild(_img);// kep kivéve
// events
this.buttonMode = true;
addEventListener(MouseEvent.CLICK, clickHandler);
// hide tag for now while loading
this.visible = true;
}
private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
var result:TextField = new TextField();
result.x = x; result.y = y;
result.width = width; result.height = height;
addChild(result);
return result;
}
private function clickHandler( e:MouseEvent ):void {
var request:URLRequest = new URLRequest( _node["@href"] );
var targetFrame:String = ( _node["@target"] == undefined ) ? "_self" : _node["@target"];
navigateToURL( request, targetFrame );
}
private function errorHandler( e:IOErrorEvent ){
trace("ioErrorHandler: "+e.toString() );
}
private function completeHandler( e:Event ){
// scale image
if( _img.width > _img.height ){
_img.height = 75;
_img.scaleX = _img.scaleY;
} else {
_img.width = 75;
_img.scaleY = _img.scaleX;
}
_img.x = -_img.width/2;
_img.y = -_img.height/2;
// draw mask
_mask = new Sprite();
_mask.graphics.beginFill(0xffffff, 1);
_mask.graphics.drawRect( -37.5, -37.5, 75, 75 );
_mask.graphics.endFill();
_holder.addChildAt(_mask,0);
_img.mask = _mask;
// create the back
_back = new Sprite();
// apply drop shadow filter
var filter:BitmapFilter = new DropShadowFilter( 3, 45, 0, 0.4, 6, 6, 1, BitmapFilterQuality.MEDIUM );
var myFilters:Array = new Array();
myFilters.push(filter);
filters = myFilters;
// draw background
_back.graphics.beginFill(0xffffff, 1);
_back.graphics.drawRect( -41.5, -41.5, 83, 83 );
_back.graphics.endFill();
_holder.addChildAt(_back,1);
_holder.addChildAt(_szamhat,3);
_holder.addChildAt(_arhat,4);
_holder.addChildAt(_label1,6);
_holder.addChildAt(_label2,7);
_holder.addChildAt(_label3,8);
//swapChildren(temp, target);
// add a little randomness
this.rotation = 10 - Math.random()*20;
// set button mode
this.buttonMode = true;
// show image
this.visible = true;
//add text
}
// setters and getters
public function set cx( n:Number ){ _cx = n }
public function get cx():Number { return _cx; }
public function set cy( n:Number ){ _cy = n }
public function get cy():Number { return _cy; }
public function set cz( n:Number ){ _cz = n }
public function get cz():Number { return _cz; }
}
}
10x.