我製作了一個矩形,一個矩形精靈和一個圓形精靈。矩形精靈具有與我的矩形完全相同的屬性,並且我將我的圓定位在舞臺的中心,這是這兩個矩形的中間。我的startDrag矩形不是我設置的位置
在追蹤矩形的值後,我可以放心地說矩形與矩形精靈一樣。那麼當然,如果我想拖動矩形周圍的圓,它應該保持在它的範圍內,對吧?
stop();
var isDragging:Boolean;
import flash.events.MouseEvent;
import flash.geom.Rectangle;
import flash.display.Sprite;
import flash.geom.Point;
var px:Number = boundingBox.x;
var py:Number = boundingBox.y;
var h:Number = boundingBox.height;
var w:Number = boundingBox.width;
var box:Rectangle = new Rectangle(px,py,w,h);
trace(box);
var blob:Sprite = new Sprite();
blob.graphics.beginFill(0x000000);
blob.graphics.lineStyle(1.2, 0xFFFFFF);
blob.graphics.drawCircle(stage.stageWidth/2, stage.stageHeight/2, 18);
blob.graphics.endFill();
addChild(blob);
var box2:Sprite = new Sprite();
box2.graphics.lineStyle(1, 0xFFCC00);
box2.graphics.drawRect(px,py,w,h);
addChild(box2);
blob.addEventListener(MouseEvent.MOUSE_DOWN, drag);
function drag(event:MouseEvent):void {
event.target.startDrag(false, box);
isDragging = true
}
那麼這似乎並非如此。也許我只是一個noob,但我不知道發生了什麼。 當我運行場景時,一切看起來都很正常。
橙色/虛線是兩個矩形我提出,一種是我用於設置我在AS3(虛線)製成的矩形的屬性的影片剪輯和橙色是AS3精靈。
圓圈處於舞臺中間,它看起來完全像我想要編程的樣子。
但是,只要我點擊它,它就會在這裏傳送。
當我試圖拖動它,它看來,如果框的左上角已經被翻譯到該點一路下跌那裏,它只是拖在右下象限各地這個舞臺,甚至還在屏幕外進一步拖延。
我不確定是否將我放入startDrag函數的矩形與實際矩形扭曲。
我不知道爲什麼會發生這種情況,因爲當我試圖使用我添加到舞臺上的影片剪輯來做到這一點時,一切正常。但只要我嘗試以編程的方式來完成,一切都會順利進行。
我很感激爲什麼這不起作用的一些幫助。謝謝閱讀。