2016-07-27 40 views
1

我要綁定彈出該按鈕的位置,稱這是一個窗格的位置,我試圖通過callling button.localToScene(button.getLayoutX(),button.getLayoutY()這樣做。但是,返回的Point2D變量在其中具有錯誤的X座標。我測量它在GIMP和它應該是在320,但它返回我586.與localToScene(X,Y)節點的場景獲取位置返回錯誤值

同樣的故事與localToScreen()順便說一句,我甚至沒有586像素的屏幕地產,直到按鈕已經出現,所以它不可能的在那個座標上。

回答

2

如果您提供的代碼有幫助,您可能希望獲得與包含按鈕的元素(如窗格或場景)相關的按鈕節點位置。但是像這樣的地方,您可以獲取包含按鈕的窗格的位置,然後獲取按鈕位置並找出差異。但我建議嘗試此:

Bounds boundsInScene = button.localToScene(button.getBoundsInLocal()); 

或者這相對於屏幕:

Bounds boundsInScreen = button.localToScreen(button.getBoundsInLocal()); 

然後使用方法:getMinX(),getMinY(),getMaxX(),getMaxY()的getWidth( )或getHeight()來獲取實際按鈕的值。

希望這會有所幫助。

+1

使用button.localToScene(button.getBoundsInLocal())似乎工作。奇怪的是,它不適用於x和y座標。噢,謝謝你的回答:) – 404KnowledgeNotFound