美文网首页
Swing的文件选择器JFileChooser

Swing的文件选择器JFileChooser

作者: 开心的小哈 | 来源:发表于2021-10-27 22:15 被阅读0次
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();

    }
}

相关文章

网友评论

      本文标题:Swing的文件选择器JFileChooser

      本文链接:https://www.haomeiwen.com/subject/wlzpaltx.html