how to handle images in java
Here is a simple example of displaying an image on frame.
import java.awt.*; import java.io.*; import javax.swing.*; import java.awt.image.*; import java.awt.event.*; import javax.imageio.ImageIO; import java.awt.image.BufferedImage; public class DisplayImage extends JPanel { BufferedImage image; DisplayImage(){ String f="c:/fruit.png"; File file = new File(f); try{ image = ImageIO.read(file); } catch(Exception ex){} repaint(); } public void paint(Graphics g) { g.drawImage( image, 0, 0, null); } public static void main(String[] args) { JFrame frame = new JFrame(); JPanel p=new DisplayImage(); frame.add(p); frame.setSize(300, 300); frame.setVisible(true); } }
Here is an example that allow the user to select any image file and display that image on frame.
import java.awt.*; import java.io.*; import javax.swing.*; import java.awt.image.*; import java.awt.event.*; import javax.imageio.ImageIO; import java.awt.image.BufferedImage; public class DisplayImage extends JPanel { BufferedImage image; Image img; JButton browse; File file = null; public DisplayImage() { browse = new JButton("Display"); this.add(browse); browse.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { JFileChooser chooser = new JFileChooser(); chooser.addChoosableFileFilter(new ImageFileFilter()); int returnVal = chooser.showOpenDialog(null); if(returnVal == JFileChooser.APPROVE_OPTION) { file = chooser.getSelectedFile(); try{ image = ImageIO.read(file); } catch(Exception ex){} repaint(); } browse.setVisible(false); } }); } public void paint(Graphics g) { g.drawImage( image, 0, 0, null); } public static void main(String[] args) { JFrame frame = new JFrame(""); JPanel panel = new DisplayImage(); frame.getContentPane().add(panel); frame.setSize(300, 300); frame.setVisible(true); } } class ImageFileFilter extends javax.swing.filechooser.FileFilter { public boolean accept(File file) { if (file.isDirectory()) return false; String name = file.getName().toLowerCase(); return (name.endsWith(".jpg") || name.endsWith(".png")|| name.endsWith(".gif")); } public String getDescription() { return "Images (*.gif,*.bmp, *.jpg, *.png )"; } }