使用SWING在java中显示多个图像并将它们分别放置在同一窗口中

问题描述

嗨,我想在同一个窗口中显示一个图像并显示一个图像在旧的上而不用擦除它以使用 JFrame 叠加它们

这里更新的代码我可以显示多张图片,但不能在旧的图片显示新的,我不能在 X 列和 Y 行中制作

希望你能帮到我


package morpion;

import java.awt.FlowLayout;
import java.awt.GridLayout;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class GUI extends JFrame
{
    
    private static final long serialVersionUID = -6398802531018487402L;

    
    
    public GUI(char [][]array,int taille)
    {
        
        
        ImageIcon board = new ImageIcon(this.getClass().getResource("tictactoe.jpg"));
        ImageIcon x = new ImageIcon(this.getClass().getResource("X.PNG"));
        ImageIcon o = new ImageIcon(this.getClass().getResource("O.PNG"));
        
        JLabel board1 = new JLabel(board);
        JLabel x1 = new JLabel(x);
        JLabel o1 = new JLabel(o);

        GridLayout grid = new GridLayout(3,3);
        
        setResizable(false);
        setTitle("TicTacToe(Morpion)");
        setDefaultCloSEOperation(JFrame.EXIT_ON_CLOSE);
        setSize(535,560);
        setLocation(200,0);
        setVisible(true);
        
        JPanel panel = new JPanel();
        setContentPane(panel);
        panel.setLayout(grid);
        
        panel.add(x1);
        panel.add(o1);
        panel.add(board1);
        
        FlowLayout game = new FlowLayout(FlowLayout.CENTER,10,10);
        getContentPane().setLayout(game);       
    }
    
     
    
}

解决方法

解决了只需要融合电路板和 X 或 O 并将结果与​​下一个令牌融合