在java中可以利用Timer类实现图片循环显示。Timer构造函数如下:

public Timer(int delay,ActionListener listener)

delay,是延迟的毫秒数,listener是监听器实例。实现过delay毫秒,触发一个动作事件。调用start启动定时器。

图片循环显示,利用标签显示图片,过delay毫秒触发一个动作事件,更新标签的图片。

代码如下:

class TimePanel extends JPanel
{
    JLabel lab = new JLabel();
    Timer t = new Timer(1000,new ActionL());
    ImageIcon[] image = new ImageIcon[20];
    int index = 0;
    public TimePanel()
    {
        setLayout(new GridLayout(1,1));
        add(lab);
        for(int i=0;i<image.length;i++)
            image[i] = new ImageIcon("img/"+(i+1)+".jpg");
        lab.setIcon(image[0]);
        t.start();
    }

    class ActionL implements ActionListener
    {

        @Override
        public void actionPerformed(ActionEvent e)
        {
            index++;
            index = index % image.length;
            lab.setIcon(image[index]);
        }
        
    }
    public Dimension getPreferredSize()
    {
        return new Dimension(500,300);
    }

标签初始图片要设置,图片索引要进行取模操作。

还有图片的位置得注意,img图片文件夹和src文件夹是平级的,




怎么读入显示一副图片java 用java编程实现图片显示_取模


里主要是解决问题的思路,供大家参考。

由于水平有限,如果有错误,请大家多多指导,提高水平,共同学习。