2015-10-30 139 views
0

我想在我的面板中繪製一個gif圖像,問題是我的代碼很好地繪製了jpg圖像,但是我沒有繪製gif圖像。這就是我的代碼的樣子。如何在JPanel中添加GIF圖像?

public class DrawingPanel extends JPanel { 
Image image; 

public DrawingPanel() { 
    setPreferredSize(new Dimension(600,600)); 
    setBackground(Color.CYAN); 
    image = new ImageIcon("C:\\Users\\Hp\\Downloads\\loading.gif").getImage(); 
} 

@Override 
    protected void paintComponent(Graphics g) { 
    // TODO Auto-generated method stub 
    super.paintComponent(g); 
    g.drawImage(image, 0, 0, getWidth(), getHeight(), null); 
} 
+0

你甚至嘗試谷歌或在本網站搜索? [首先擊中谷歌](http://stackoverflow.com/questions/2935232/show-animated-gif-in-java)。 「動畫Gif爪哇」 – brimborium

+0

爲什麼這是使用圖像的自定義繪畫,而不是顯示在標籤(它應該自動動畫)? 1)另請參見[在Swing中顯示動畫BG](http://stackoverflow.com/q/10836832/418556)2)'g.drawImage(image,0,0,getWidth(),getHeight(),null) ;'應該''g.drawImage(image,0,0,getWidth(),getHeight(),this);' –

+0

我使用paintComponent,因爲我必須畫一個grid.and我想在後臺使用gif圖像,就像流暢免費遊戲 –

回答

0
BufferedImage image; 
image = ImageIO.read(new File("image name and path")); 

使用ImageIO

@Override 
protected void paintComponent(Graphics g) { 
    super.paintComponent(g); 
    g.drawImage(image, 0, 0, null);  
} 
+0

圖像是可見的,但它是frozen.No動畫 –