为什么我的BlueJ jar文件加载一些图像,而不是其他图像?

时间:2017-07-06 23:17:32

标签: java paintcomponent jcomponent javax

我使用了本网站的一些信息来了解如何使用URL将图像放入jar文件中;我希望能够单独使用。但是当我用BlueJ制作jar文件时,只显示了一些图像。

它是一个二十一点游戏,只有桌面画布出现,而没有卡片。这是代码:

本作品(表):

oninput()

但这不是(卡片):

public class TableComponent extends JLabel{

  BufferedImage table;


  public TableComponent(){
    URL finalTable = getClass().getResource("blackjackTableCanvas.jpg");
        try {
        table = ImageIO.read(finalTable);
    } catch (IOException e) {
        e.printStackTrace();
    }

  }

  @Override
protected void paintComponent(Graphics g) {
  Graphics2D g2 = (Graphics2D) g;
    super.paintComponent(g2);
    g2.drawImage(table, 0, 0, null);
}...}

我的卡位于我尝试导入BlueJ的目录中的一个文件夹中,而该表位于目录root中。那里有53张卡(包括经销商隐藏的卡),我宁愿不把所有的卡放在根目录中。我试着类似地实现它们。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

看起来像是从

改变
URL cardview = getClass().getResource("\\card deck\\DEALER_FIRST_CARD.png");

 URL cardview = getClass().getResource("card deck/DEALER_FIRST_CARD.png");

做了这个伎俩。