Напиши классы наследуемые от битмап и спрайтов и добавь к свойствам ширины и высоты отправку события.
Код AS3:
package {
import flash.display.Sprite;
import flash.events.Event;
public class MySprite extends Sprite {
public function MySprite() {
// constructor code
}
public override function set width( value:Number ):void {
super.width = value;
this.dispatchEvent( new Event( "RESIZE" ) );
}
}
}
Код AS3:
import flash.events.MouseEvent;
import flash.events.Event;
var s:MySprite = new MySprite();
s.graphics.beginFill( 0x000000 );
s.graphics.drawRect( 0, 0, 200, 200 );
this.addChild( s );
s.addEventListener( "RESIZE", Trace );
stage.addEventListener(MouseEvent.CLICK, Click );
function Trace( e:Event ):void {
trace( s.width );
}
function Click( e:MouseEvent ):void {
s.width = Math.random() * 100 + 100;
}
Будет удобно. Вот так раз: my_sprite.width = 100; и сразу событие придет.