Swing ImageIcon Class

Advertisements


Introduction

The class ImageIcon is an implementation of the Icon interface that paints Icons from Images.

Class declaration

Following is the declaration for javax.swing.ImageIcon class:

public class ImageIcon
   extends Object
      implements Icon, Serializable, Accessible

Field

Following are the fields for javax.swing.ImageIcon class:

  • protected static Component component

  • protected static MediaTracker tracker

Class constructors

S.N.Constructor & Description
1ImageIcon()
Creates an uninitialized image icon.
2ImageIcon(byte[] imageData)
Creates an ImageIcon from an array of bytes which were read from an image file containing a supported image format, such as GIF, JPEG, or (as of 1.3) PNG.
3ImageIcon(byte[] imageData, String description)
Creates an ImageIcon from an array of bytes which were read from an image file containing a supported image format, such as GIF, JPEG, or (as of 1.3) PNG.
4ImageIcon(Image image)
Creates an ImageIcon from an image object.
5ImageIcon(Image image, String description)
Creates an ImageIcon from the image.
6ImageIcon(String filename)
Creates an ImageIcon from the specified file.
7ImageIcon(String filename, String description)
Creates an ImageIcon from the specified file.
8ImageIcon(URL location)
Creates an ImageIcon from the specified URL.
9ImageIcon(URL location, String description)
Creates an ImageIcon from the specified URL.

Class methods

S.N.Method & Description
1AccessibleContext getAccessibleContext()
Gets the AccessibleContext associated with this ImageIcon.
2String getDescription()
Gets the description of the image.
3int getIconHeight()
Gets the height of the icon.
4int getIconWidth()
Gets the width of the icon.
5Image getImage()
Returns this icon's Image.
6int getImageLoadStatus()
Returns the status of the image loading operation.
7ImageObserver getImageObserver()
Returns the image observer for the image.
8protected void loadImage(Image image)
Loads the image, returning only when the image is loaded.
9void paintIcon(Component c, Graphics g, int x, int y)
Paints the icon.
10void setDescription(String description)
Sets the description of the image.
11void setImage(Image image)
Sets the image displayed by this icon.
12void setImageObserver(ImageObserver observer)
Sets the image observer for the image.
13String toString()
Returns a string representation of this image.

Methods inherited

This class inherits methods from the following classes:

  • java.lang.Object

ImageIcon Example

Create the following java program using any editor of your choice in say D:/ > SWING > com > tutorialspoint > gui >

SwingControlDemo.java
package com.tutorialspoint.gui;
 
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
public class SwingControlDemo {
    
   private JFrame mainFrame;
   private JLabel headerLabel;
   private JLabel statusLabel;
   private JPanel controlPanel;

   public SwingControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      SwingControlDemo  swingControlDemo = new SwingControlDemo();      
      swingControlDemo.showImageIconDemo();
   }

   private void prepareGUI(){
      mainFrame = new JFrame("Java Swing Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new JLabel("", JLabel.CENTER);        
      statusLabel = new JLabel("",JLabel.CENTER);    

      statusLabel.setSize(350,100);

      controlPanel = new JPanel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   // Returns an ImageIcon, or null if the path was invalid. 
   private static ImageIcon createImageIcon(String path,
      String description) {
      java.net.URL imgURL = SwingControlDemo.class.getResource(path);
      if (imgURL != null) {
         return new ImageIcon(imgURL, description);
      } else {            
         System.err.println("Couldn't find file: " + path);
         return null;
      }
   }


   private void showImageIconDemo(){
      headerLabel.setText("Control in action: ImageIcon"); 
	  
      ImageIcon icon = createImageIcon("/resources/java_icon.png","Java");

      JLabel commentlabel = new JLabel("", icon,JLabel.CENTER);

      controlPanel.add(commentlabel);

      mainFrame.setVisible(true);  
   }
}

Compile the program using command prompt. Go to D:/ > SWING and type the following command.

D:\SWING>javac com\tutorialspoint\gui\SwingControlDemo.java

If no error comes that means compilation is successful. Run the program using following command.

D:\SWING>java com.tutorialspoint.gui.SwingControlDemo

Verify the following output

Swing ImageIcon

Advertisements
Advertisements