有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java中的swing层图像

我正在尝试将这两幅图像分层,但只显示其中一幅。请帮忙:)

public void loadImage() {



           JPanel imgPane = new JPanel();
  img = new JLabel(bg, JLabel.CENTER);
  imgPane.setLayout(new BorderLayout());
  imgPane.add(img);// center
  panel1.add(imgPane, BorderLayout.CENTER);// background image (center)
  gameFrame.add(panel1);


  JPanel imgPane1 = new JPanel();

        img1 = new JLabel(bg1, JLabel.CENTER);
  imgPane1.setLayout(new BorderLayout());
  imgPane1.add(img1);// center
  panel1.add(imgPane1, BorderLayout.CENTER);// background image (center)
  gameFrame.add(panel1);


 }

共 (1) 个答案

  1. # 1 楼答案

    确保文件路径相对于工作目录。例如,如果文件路径为sword.png,则图像必须与src具有相同的父文件夹。例如:

    enter image description here

    尝试将图像移动到项目文件夹的根目录,我已经验证了它的有效性

    顺便说一下,您可以使用以下简单的代码行测试文件是否存在:

    System.out.println(new File("sword.png").exists());
    

    这将告诉您该文件相对于工作目录是否存在。在你的情况下,这是错误的。如果图像位于src目录中,则使用路径src/sword.png

    希望这有帮助