【问题标题】:Java animated GIF without using a JLabel不使用 JLabel 的 Java 动画 GIF
【发布时间】:2011-04-10 16:29:54
【问题描述】:

有没有办法在不使用 JLabel 的情况下在 Java 中显示动画 GIF 图像?我正在尝试在游戏中实现一些 GIFS,并且想只绘制它们而不需要弄乱 JComponents。图像观察者会工作吗?我运气不好?

【问题讨论】:

    标签: java image


    【解决方案1】:

    下面展示了一张不使用 JLabel 在 JPanel 中的图片:

    import java.awt.Graphics;
    import java.awt.Image;
    import java.awt.Toolkit;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.SwingUtilities;
    
    public class ImagePanel extends JPanel 
    {
    
      Image image;
    
      public ImagePanel() 
      {
        image = Toolkit.getDefaultToolkit().createImage("e:/java/spin.gif");
      }
    
      @Override
      public void paintComponent(Graphics g) 
      {
        super.paintComponent(g);
        if (image != null) 
        {
          g.drawImage(image, 0, 0, this);
        }
      }
    
      public static void main(String[] args) 
      {
        SwingUtilities.invokeLater(new Runnable() 
        {
    
          @Override
          public void run()  
          {
            JFrame frame = new JFrame();
            frame.add(new ImagePanel());
    
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setSize(400, 400);
            frame.setLocationRelativeTo(null);
            frame.setVisible(true);
          }
        });
      }
    }
    

    【讨论】:

      猜你喜欢
      • 2012-09-15
      • 1970-01-01
      • 2012-05-24
      • 2015-09-13
      • 1970-01-01
      • 2013-11-26
      • 2013-08-28
      • 1970-01-01
      • 2012-03-12
      相关资源
      最近更新 更多