2016-06-08 55 views
0

我想将图片保存在Arraylist中,以便我可以用变量调用它们。他们应该通过一张单张JLabel中显示的卡片进行小图片展示,随时可以展开。Java AWT - 如何在Arraylist中保存图像

我是新来的Java,无法想象如何做到这一点。愿你们中的一些人做。

底部的代码尽我所能,并显示图片应该代替字符。

if (event.getSource() == bBet) {  
    random = getRandom(); 
    CardsPC.add(getCard(random)); 
    setPointsPC(random); 

    String text = CardsPC.get(0); 
    for(int i = 1; i < CardsPC.size(); i++){ 
      text = text + ", " + CardsPC.get(i); 
    } 
    lblCardsPC.setText(text); 
} 

public String[] Cards = { "2", "3", "4", "5", "6", "7", **(Pictures here)**}; 

public String getCard(int random) { 

    String card = Cards[random]; 
    return card; 
} 

public int getRandom() { 
    int random = r.nextInt(13); 
    return random; 
} 


public void setPointsPC(int number) { 
    switch (number) { 
    case 0: 
     pointsPC.add("2"); 
     break; 
    case 1: 
     pointsPC.add("3"); 
     break; 
    case 2: 
     pointsPC.add("4"); 
     break; 
    case 3: 
     pointsPC.add("5"); 
     break; 
    case 4: 
     pointsPC.add("6"); 
     break; 
    case 5: 
     pointsPC.add("7"); 
     break; 
    case 6: 
     pointsPC.add("8"); 
     break; 
    case 7: 
     pointsPC.add("9"); 
     break; 
    case 8: 
     pointsPC.add("10"); 
     break; 
    case 9: 
     pointsPC.add("10"); 
     break; 
    case 10: 
     pointsPC.add("10"); 
     break; 
    case 11: 
     pointsPC.add("10"); 
     break; 
    case 12: 
     pointsPC.add("11"); 
     break; 
    case 13: 
     pointsPC.add("-10"); 
     break; 
    } 
} 

回答

2

你正在寻找一个Image ...

BufferedImage img = ImageIO.read(new File("myFile.png")); 

该图像可以被用作标签/按钮的ImageIcon,也可以直接在图形绘制

ImageIcon icon = new ImageIcon(img); 

Graphics g = ...; 
g.drawImage(img, 0,0, null);