チェスゲームのJavaでGUIに画像を追加しようとしています:
JPanel theBoard;
JLabel aPiece;
JLayeredPane layeredPane;
public ChessGameGUI()
{
Dimension size = new Dimension(480, 480);
layeredPane = new JLayeredPane();
getContentPane().add(layeredPane);
layeredPane.setPreferredSize(size);
theBoard = new JPanel();
layeredPane.add(theBoard, JLayeredPane.DEFAULT_LAYER);
GridLayout chessBoardLayout = new GridLayout(8,8);
theBoard.setLayout(chessBoardLayout);
theBoard.setPreferredSize(size);
theBoard.setBounds(0, 0, size.width, size.height);
boolean drawWhite = false;
// setup initial squares
for(int x = 0; x < 8; x++)
{
for(int y = 0; y < 8; y++)
{
BorderLayout squareBorder = new BorderLayout();
JPanel aChessSquare = new JPanel(squareBorder);
theBoard.add(aChessSquare);
if(drawWhite) aChessSquare.setBackground(Color.white);
else aChessSquare.setBackground(Color.green);
if(y == 7);
else drawWhite = !drawWhite;
}
}
}
このコードは市松模様のボードをうまくセットアップしますが、個々のピースを追加しようとしても何も起こりません:
for(int x = 0; x < 8; x++)
{
for(int y = 0; y < 8; y++)
{
if(board[x][y]._isOccupied)
{
System.out.println("found a piece at x = " + x + " y = " + y);
//ImageIcon pieceImage = new ImageIcon("Images/wPawn.jpg");
ImageIcon pieceImage = findPieceImage(board, x, y);
JLabel pieceToDraw = new JLabel(pieceImage);
JPanel curComponent = (JPanel)theBoard.getComponent(7 * x + y);
curComponent.add(pieceToDraw);
}
}
}
Images フォルダーは src フォルダーに含まれています。なぜこれがうまくいかないのか誰にも分かりますか?