package test.object;
import java.awt.Canvas;
import java.awt.FileDialog;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
public class TextMain {
public static void main(String[] args) {
new TextMain().init();
}
public void init() {
Frame frame = new Frame("Image despay");
MenuBar menuBar = new MenuBar();
Menu file = new Menu("file");
MenuItem open = new MenuItem("open");
MenuItem sven = new MenuItem("sven");
MyImage myImage = new MyImage();
open.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
FileDialog fileDialog = new FileDialog(frame, "Open Image", FileDialog.LOAD);
fileDialog.setVisible(true);
String directory = fileDialog.getDirectory();
String file2 = fileDialog.getFile();
try {
image = ImageIO.read(new File(directory, file2));
System.out.println("-1111-");
myImage.repaint();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
});
sven.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
FileDialog fileDialog = new FileDialog(frame, "save Image", FileDialog.SAVE);
fileDialog.setVisible(true);
String directory = fileDialog.getDirectory();
String file2 = fileDialog.getFile();
try {
boolean write = ImageIO.write(image, "JPEG", new File(directory, file2));
String[] writerFormatNames = ImageIO.getWriterFormatNames();
for (String data : writerFormatNames) {
System.out.println(data);
}
System.out.println("-2222-" + directory + file2 + write + "\n");
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
});
file.add(open);
file.add(sven);
menuBar.add(file);
frame.setMenuBar(menuBar);
frame.add(myImage);
frame.setBounds(100, 100, 500, 500);
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
BufferedImage image;
class MyImage extends Canvas {
@Override
public void paint(Graphics g) {
g.drawImage(image, 0, 0, null);
}
}
}
网友评论