Animating Images in Java Application

Ads
 

Animating Images in Java Application

This section shows you how to create an animation with multiple images.

This section shows you how to create an animation with multiple images.

Animating Images in Java Application

     

This section shows you how to create an animation with multiple images. You can see how animation has been implemented in the following program or example. The given program implements the animation using more than one images. Image are given below:

First image of swing animation

Second image of swing animation

In this program, images are displayed one by one from the list of the images. Images are added to the label on the frame or window. This program shows the image one by one after 1000 milliseconds or 1 second. The time delaying is maintained by thread. 

Code Description:

One method has been used to show images on the frame one by one during the 1000 milliseconds. This collection of images makes the application as an animation.

sleep(int time):
This is the method of the Thread class which is used to sleep the program for the specified time. The time to sleep is passed through the
sleep() method of the Thread class as parameter.

Here is the code of the program:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class SwingAnimation{
  Thread th;
  ImageIcon images;
  JFrame frame;
  JLabel lbl;
  int i = 0;
  int j;

  public static void main(String[] args){
  SwingAnimation sa = new SwingAnimation();
  }

  public SwingAnimation(){
  frame = new JFrame("Animation Frame");
  th = new Thread();
  lbl = new JLabel();
  Panel panel = new Panel();
  panel.add(lbl);
  frame.add(panel, BorderLayout.CENTER);
  frame.setSize(400400);
  frame.setVisible(true);
  frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  for(j = 1; j <= 2; j++){
  SwingAnimator();
  if (j == 2)
  j = 0;
  }
  }

  public void SwingAnimator(){
  try{
  for(i = 1; i <= 5; i++){
  images = new ImageIcon("images/img" + i + ".gif");
  lbl.setIcon(images);
  th.sleep(1000);
  }
  }
  catch(InterruptedException e){}
  }
}

Download this example.

Ads

Ads