I got a problem with my program, i want to write a bufferedimage to my JFrame but it won't show up. I tryed a few things but nothing seemed to work.
Can someone fill me in with the code i need to add my image to my JFrame for image processing?
here's my code:
import javax.imageio.ImageIO;
import javax.swing.*;
import javax.swing.filechooser.FileNameExtensionFilter;
import java.awt.*;
import java.awt.event.*;
import java.awt.image.BufferedImage;
import java.io.*;
public class Frame extends JFrame implements ActionListener {
JFrame frame = new JFrame("Graphics");
JMenuBar mb = new JMenuBar();
JFileChooser fileChooser = new JFileChooser();
File file;
BufferedImage image = null;
JLabel label;
public Frame()
{
//filechooser settings
FileNameExtensionFilter filter = new FileNameExtensionFilter("Image files", "jpg", "gif", "jpeg", "psd");
fileChooser.setFileFilter(filter);
//frame settings
frame.setSize(1000, 1000);
frame.setResizable(false);
//Setting Menubar
frame.setJMenuBar(mb);
//fileMenu
JMenu fileMenu = new JMenu("File");
mb.add(fileMenu);
//JMenuItems
JMenuItem open = new JMenuItem("Open image");
JMenuItem close = new JMenuItem("Close image");
JMenuItem exit = new JMenuItem("Exit");
//Adding items to fileMenu
fileMenu.add(open);
fileMenu.add(close);
fileMenu.add(exit);
//Adding actionlisteners
open.addActionListener(this);
close.addActionListener(this);
exit.addActionListener(this);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if(e.getActionCommand().equals("Open image"))
{
int ret = fileChooser.showDialog(null, "Open image");
if(ret == JFileChooser.APPROVE_OPTION)
{
loadImage();
}
}
if(e.getActionCommand().equals("Close image"))
{
JOptionPane.showMessageDialog(null, "This button isn't doing anything right now :D/>", "Error", JOptionPane.ERROR_MESSAGE);
}
if(e.getActionCommand().equals("Exit"))
{
System.exit(0);
}
}
public void loadImage()
{
try
{
file = fileChooser.getSelectedFile();
image = ImageIO.read(file);
;
}catch (Exception e1) {
JOptionPane.showMessageDialog(null, "Please open an image file", "Error", JOptionPane.ERROR_MESSAGE);
}
}
}

New Topic/Question
Reply
MultiQuote









|