package com.main;
import javax.imageio.ImageIO;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.image.BufferedImage;
import java.awt.image.BufferedImageFilter;
import java.awt.image.ImageFilter;
import java.awt.image.ImageObserver;
import java.io.File;
import java.io.IOException;
public class JColorDemo {
JFrame jFrame=new JFrame("测试文本选择器");
JMenuBar jMenuBar=new JMenuBar();
JMenu jMenu=new JMenu("文件");
JMenuItem open=new JMenuItem(new AbstractAction("打开") {
@Override
public void actionPerformed(ActionEvent e) {
//显示一个文件选择器
JFileChooser fileChooser=new JFileChooser(".");
fileChooser.showOpenDialog(jFrame);
//获取用户选择的文件
File selectedFile = fileChooser.getSelectedFile();
try {
image = ImageIO.read(selectedFile);
drass.repaint();
} catch (IOException t) {
}
// 进行显示
}
});
JMenuItem save=new JMenuItem(new AbstractAction("另存为") {
@Override
public void actionPerformed(ActionEvent e) {
//显示一个文件选择器
JFileChooser fileChooser=new JFileChooser(".");
fileChooser.showSaveDialog(jFrame);
//获取用户选择的文件,保存文件的路径
File selectedFile = fileChooser.getSelectedFile();
try {
ImageIO.write(image,"png",selectedFile);
drass.repaint();
} catch (IOException ex) {
ex.printStackTrace();
}
// 进行显示
}
});
BufferedImage image;
public class MyCanvas extends JPanel{
@Override
public void print(Graphics g) {
super.print(g);
//把图片绘制到组件上
g.setColor(Color.RED);
g.drawImage(image,0,0,null);
// g.drawString("111111111111111111111111111",0,0);
}
}
MyCanvas drass=new MyCanvas();
public void init(){
jMenu.add(open);
jMenu.add(save);
jMenuBar.add(jMenu);
jFrame.setJMenuBar(jMenuBar);
// drass.setPreferredSize(new Dimension(740,500));
jFrame.add(drass);
jFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
jFrame.setVisible(true);
}
public static void main(String[] args) {
new JColorDemo().init();
}
}
网友评论