0
我知道這已被問了好幾次,但沒有任何解決方案爲我們工作。 我們正在重新創建具有世界地圖的遊戲,並且應該在每個國家/地區顯示標誌。我們通過使用圖形方法得到它的工作(有點),但這不是持久的,也不能用var名稱來標記一個標誌。Java/Swing層標籤頂部如果彼此
這就是爲什麼我們想要在JLabel
中的每一個標誌,並在gamePane
內繪製它們,但在他們的指定座標。所以我們需要能夠用z軸進行定位。
GamePane有一個JLabel
與ImageIcon
裏面,應該形成背景。最重要的是我們要創建的標誌
一些代碼(可能沒有幫助): -
gamePane = new JPanel();
[...]
public void paintFlagLabel() {
for (Country currentCountry : risiko.getCountryList()) {
JLabel flag = new JLabel();
int x = currentCountry.getX();
int y = currentCountry.getY();
if (currentCountry.getOwningPlayer().equals(this.player)) {
flag.setIcon(new ImageIcon(greenFlag));
} else {
flag.setIcon(new ImageIcon(redFlag));
}
String coordinates = "pos " + x + " " + y;
gamePane.add(flag, coordinates);
gamePane.revalidate();
gamePane.repaint();
}
}