2015-10-30 7 views
0

Я хочу нарисовать изображение gif в моей панели, проблема в том, что мой код рисует jpg-изображения, но я не рисую gif-изображения. Так выглядит мой код.Как добавить GIF-изображение в JPanel?

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

Вы даже попробовать Google или поиск на этом сайте? [Первый удар по google] (http://stackoverflow.com/questions/2935232/show-animated-gif-in-java). «Анимированная Gif Java» – brimborium

+0

Почему это использует пользовательскую картину для изображения вместо того, чтобы отображать ее на ярлыке (который должен автоматически анимировать ее)? 1) См. Также [Показать анимированный BG в Swing] (http://stackoverflow.com/q/10836832/418556) 2) 'g.drawImage (изображение, 0, 0, getWidth(), getHeight(), null) ; 'должно быть' g.drawImage (image, 0, 0, getWidth(), getHeight(), this); ' –

+0

Я использую paintComponent, потому что мне нужно нарисовать сетку. И я хочу, чтобы изображение 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

изображение видно, но оно заморожено.Нет анимации –