How to loop Image Smoothly


import java.awt.Container;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class JPGPlayer extends JFrame{

private ImagePanel imagePane;

public JPGPlayer() {
super("JPGPlayer");
Container c = getContentPane();
imagePane = new ImagePanel(getImage("output/IMG_0.jpeg"));
c.add(imagePane);
}

private Image getImage(String imgpath) {
Toolkit toolkit = Toolkit.getDefaultToolkit();
Image image = toolkit.getImage(imgpath);
return image;
}

public void showimg() {

for (int a = 1; a < 500; a++) {

try {
Thread.sleep(200);
} catch (InterruptedException e) {
e.printStackTrace();
}
//System.out.println(a);
imagePane.setImage(getImage("output/IMG_" + a + ".jpeg"));
imagePane.repaint();
}
}

class ImagePanel extends JPanel {

private Image image;

public ImagePanel(Image image) {
this.image = image;
}

public void paint(Graphics g) {
g.drawImage(image, 0, 0, 352, 240, this);
}

public void update(Graphics g) {
paint(g);
}

public Image getImage() {
return image;
}

public void setImage(Image image) {
this.image = image;
}
}

public static void main(String[] args) {
JPGPlayer app = new JPGPlayer();
app.addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent evt) {
System.exit(0);
}
});
app.setResizable(false);
app.pack();
app.setSize(355, 260);
app.setVisible(true);
app.showimg();
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值