ImageIcon (BufferedImage) отображается в виде белого поля - PullRequest
0 голосов
/ 22 февраля 2020

Так что он отображает белое поле больше ничего, даже без масштабирования. Я знаю, что путь к изображению правильный, и он работает, так как я использую другую функцию для отображения изображения. chess

ИСПРАВЛЕНО: пришлось удалить: эту строку:

temp.setLayout (null);


private ArrayList<JPanel> setupLostPiecesList(Player player){
    ArrayList<JPanel> listOfPieces = new ArrayList<>();
    for(Piece piece : player.getLostPieces()) {
        if (piece != null) {
            JPanel temp = new JPanel();
            temp.setLayout(null);
            String imgPath = "img/";
            imgPath += piece.getAlliance().isWhite() ? "WHITE_" : "BLACK_";
            try {
                BufferedImage image = ImageIO.read(new File(imgPath + piece.getPieceType().getImgFileString()));
                temp.add(new JLabel(new ImageIcon(image.getScaledInstance(20, 20, Image.SCALE_SMOOTH))));
                listOfPieces.add(temp);
            } catch (Exception e) {
                System.out.println("IMG NOT FOUND!");
            }
        }
    }
    return listOfPieces;
}
...