2012-11-28 71 views
1

假設「temp1」是一個嵌入式圖像,它是給定的ax和y位置..我想要把它的座標,並把它放到一個整數..我試圖看,但theres沒有信息,它顯然現在工作即時通訊的方式做這件事,我 繼承人如何做到了..我如何將一個位圖X位置整數或數字?

public var temp1:Bitmap = new Bitmap() 
public var t1:int; 
public var image:MovieClip = new MovieClip() 
public var eater:MovieClip = new MovieClip(); 

[Embed(source="Asset/Levels/Easy.swf")] 
private var Easy:Class; 

[Embed(source="Asset/Levels/Eat.swf")] 
private var Eat:Class; 

public class Game extends Sprite 
{ 
    eater = new Eat(); 

    image = new Easy(); 
    image.x = 100; 
    image.y = 100; 
    stage.addChild(image); 
    image.addEventListener(MouseEvent.CLICK, click); 

} 

public function click(event:MouseEvent):void 
{ 
    temp1 = event.target.getChildAt(0); 
    tester(); 
} 

public function tester():void 
{ 
    t1 = temp1.x; 
    trace("t1 " + t1); 
    eater.x = t1; 
    stage.addChild(eater); 
} 

注意:這僅僅是我寫說明的情況我是個例子..

我也試過它作爲一個「號碼「變量而不是」整數「.. 追蹤它之後,它只會顯示爲」0「..

爲什麼即時通訊這樣做的原因,是因爲我的舞臺上有一個Bitmap陣列..它是一個6x6的位圖圖像網格。當我點擊舞臺上的圖像時,我想採用它的x,y座標並將其提供給一個Integer ..這樣我就可以使用保存的x和y位置用動畫片段來覆蓋位圖..我已經對它進行了編程,以便在影片剪輯文件(Swf)結束時圖像會消失。問題是,當我這樣做,除了movieclip的x和y位置以外,一切都很順利..它出現在舞臺的左上角。 我希望它位於位圖上,所以使用這個公式我認爲它可以工作,但我只是傾斜弄清楚爲什麼它沒有保存斧頭的位置。

+1

你知不知道會發生什麼事情將要如實例'var temp1:Bitmap = new Bitmap();'並且DisplayObject將x和y設置爲0? –

+0

我的歉意,我真的不明白你的意思.. 雖然我試圖解釋, 我會編輯它,只是添加一些額外的代碼,所以每個人都可以很容易地理解它。 –

回答

1

我沒有手頭有閃光燈在這裏,但是當你的temp1值更改爲

temp1 = event.currentTarget as Bitmap; 
+0

不要使用getChildAt( 0) - 剛剛獲得目標,x和y應該是有效的。另外,不要將它分配爲全局變量,只需處理獲取x和y的所有代碼並替換處理程序中的圖像即可。 – Gone3d

相關問題