e581. animating an array of images in an application.txt

来自「这里面包含了一百多个JAVA源文件」· 文本 代码 · 共 55 行

TXT
55
字号
This is the simplest application to animate an array of images. 
    import java.awt.*;
    import javax.swing.*;
    
    public class AnimApp extends JComponent implements Runnable {
        Image[] images = new Image[2];
        int frame = 0;
    
        public void paint(Graphics g) {
            Image image = images[frame];
            if (image != null) {
                // Draw the current image
                int x = 0;
                int y = 0;
                g.drawImage(image, x, y, this);
            }
        }
    
        public void run() {
            // Load the array of images
            images[0] = new ImageIcon("image1.gif").getImage();
            images[1] = new ImageIcon("image2.gif").getImage();
    
            // Display each image for 1 second
            int delay = 1000;    // 1 second
    
            try {
                while (true) {
                    // Move to the next image
                    frame = (frame+1)%images.length;
    
                    // Causes the paint() method to be called
                    repaint();
    
                    // Wait
                    Thread.sleep(delay);
                }
            } catch (Exception e) {
            }
        }
    
        public static void main(String[] args) {
            AnimApp app = new AnimApp();
    
            // Display the animation in a frame
            JFrame frame = new JFrame();
            frame.getContentPane().add(app);
            frame.setSize(300, 300);
            frame.setVisible(true);
    
            (new Thread(app)).start();
        }
    }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?