
Код AS3:
import flash.display.Sprite;
import flash.geom.Rectangle;
import flash.events.MouseEvent;
import flash.events.Event;
var s:Sprite = new Sprite();
s.graphics.beginFill(0x123456);
s.graphics.drawRect(0, 0, 100, 100);
addChild(s);
var rect:Rectangle = new Rectangle(0, 0, 50, 50);
stage.addEventListener(MouseEvent.CLICK, handler_click);
function handler_click(event:Event = null):void {
s.scrollRect = rect;
trace('handler_click:', s.width, s.height);
//stage.addEventListener(Event.ENTER_FRAME, handler_enterFrame);
}
function handler_enterFrame(event:Event):void {
trace('handler_enterFrame:', s.width, s.height);
}
Ширина и высота после накладывания scrollRect-a не сразу принимают правильные значения:
Цитата:
handler_click: 100 100
handler_click: 50 50
|
Более того, если раскомментировать слушатель ENTER_FRAME-a, то у меня видно, что и в его первом срабатывании размеры еще не приняли истинного значения:
Цитата:
handler_click: 100 100
handler_enterFrame: 100 100
handler_enterFrame: 50 50
|
Этот глюк стоил мне мощнейшего батхерда уже вторую пару выходных.