我对Java编程非常陌生,现在我正在尝试制作井字游戏。我的代码中的所有内容似乎都不错,但有一件事情:当我尝试向框架中添加自定义JLabel ImageIcon时,之前添加到内容窗格中的背景图像将覆盖JLabel ImageIcon,并且当我尝试添加时附加的JLabel ImageIcon,每个新的JLabel ImageIcon都会覆盖以前的JLabel ImageIcon。如果有人可以帮助我教我如何添加其他图像而不覆盖其他内容,将不胜感激。
在这里,我将ContentPane设置为具有背景图片:
JFrame frame = new JFrame("Tic Tac Toe");
try {
frame.setContentPane(new JLabel(
new ImageIcon(ImageIO.read(new File("C:/Users/anton/OneDrive/Bilder/tictactoe2.png")))));
} catch (IOException e) {
System.out.println("Image doesn't exist");
}
在这里,我向JFrame中添加了一个新的JLabel ImageIcon,因为背景图像正在覆盖它,所以它没有显示出来:
frame.add(new JLabel(new ImageIcon("C:/Users/anton/OneDrive/Bilder/Triangle1.png")));
frame.setSize(500, 500);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
如果我尝试添加两个不同的JLabel ImageIcons而不在ConentPane中放置图像,则仅显示第二个JLabel ImageIcon:
frame.add(new JLabel(new ImageIcon("C:/Users/anton/OneDrive/Bilder/Circle1.png")));
frame.add(new JLabel(new ImageIcon("C:/Users/anton/OneDrive/Bilder/Triangle1.png")));
frame.setSize(500, 500);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);