我的問題是,當我創建一個JButton時,在其構造函數中,我使用下面的代碼將它的位置設置爲一些相對座標,比如x = 5和y = 6:JButton和它的位置方法非常奇怪
this.setLocation(new Point(x, y));
但我嘗試使用getLocation()方法獲取其位置後,它始終返回0,0。請注意,這種情況發生在我試圖放置在JFrame的網格佈局上的每個JButton中,並且在調試過程中,我也注意到它們的位置正在正確實例化。
有人可以向我解釋爲什麼發生這種情況,如果我能以某種方式解決它?
編輯:
構造(磚類,我做了,延伸的JButton):
public Brick(int posx, int posy) {
this.setLocation(new Point(posx, posy));
this.setVisible(true);
}
我讓他們約在100 + 2循環:
for (int row = 0; row < 15; row++) {
for (int column = 0; column < 15; column++) {
Brick brickie = new Brick(row, column);
}
}
但之後,如果我想挑磚並檢查其位置,請執行以下操作:
Point brickLocation = brickie.getLocation();
兩個brickLocation.x == 0
和brickLocation.y == 0
你可以發佈一些更多的代碼?就像你正在談論的構造函數以及你如何獲得位置? – npinti
1)不要設置按鈕的位置。 2)在GUI被打包並顯示之前,不要調用按鈕的位置。 3)爲了更快得到更好的幫助,請發佈[SSCCE](http://sscce.org/)。 –