JAVA Swing图形化编程(一)文件选择器JFileChooser

这两天做一个图形化软件需要选择文件并进行文件读取,因此需要使用到JAVA Spring中的文件选择框。查阅相关资料发现FileChooser是一个不错的选择,在此记录一下使用过程和心得。
拿到一种新的java类,最先做的就是查看API文档,相关介绍如下;
首先看一下构造方法:

造方法摘要 
JFileChooser() 
构造一个指向用户默认目录的 JFileChooser。 
JFileChooser(File currentDirectory) 
使用给定的 File 作为路径来构造一个 JFileChooser。 
JFileChooser(File currentDirectory, FileSystemView fsv) 
使用给定的当前目录和 FileSystemView 构造一个 JFileChooser。 
JFileChooser(FileSystemView fsv) 
使用给定的 FileSystemView 构造一个 JFileChooser。 
JFileChooser(String currentDirectoryPath) 
构造一个使用给定路径的 JFileChooser。 
JFileChooser(String currentDirectoryPath, FileSystemView fsv) 
使用给定的当前目录路径和 FileSystemView 构造一个 JFileChooser。 

可以看到构造方法很多,如果没有特殊需求,一般选择空参数的构造函数就可以了。
有了构造方法就可以初始化对象,但是只有调用相关的成员方法才可以进行相关操作,主要的成员方法如下:

 void addActionListener(ActionListener l) 
 向文件选择器添加一个 ActionListener。 
 String getName(File f) 
 返回文件名。 
 File getSelectedFile() 
 返回选中的文件。 
 int showDialog(Component parent, String approveButtonText) 
 弹出具有自定义 approve 按钮的自定义文件选择器对话框。 
 void setFileFilter(FileFilter filter) 
 设置当前文件过滤器。 

一个非常有意思也十分有用的方法是Filter,用户可以设置特定的文件过滤器,来更快更准确的获取到想要的文件。
作为一个javaSwing和AWT的子类,Jfilechooser同时也从javax.swing.JComponent java.awt.Container java.awt.Component 继承了所有的父类方法 。
熟悉了JFileChooser的主要特性和使用方法后,下面写一段程序进行测试,假设程序功能是用户点击选择文件按钮后,弹出一个文件选择框。
核心代码如下:

首先定义一个Button
  button_file = new JButton("\u9009\u62E9\u6587\u4EF6");
  button_file.setFont(new Font("黑体", Font.PLAIN, 13));
  button_file.setBounds(10, 322, 89, 40);
  panel_choose.add(button_file);
为该Button添加时间监听器,在监听器中加入文件选择器:
button_file.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent e){
    JFileChooser jfc=new JFileChooser();                        
    jfc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTO    RIES );  
    jfc.showDialog(new JLabel(), "选择");  
    File file=jfc.getSelectedFile();  
    if(file.isDirectory()){  
//  System.out.println("文件夹:"+file.getAbsolutePath()); 
    }else if(file.isFile()){  
       FILE=file.getAbsolutePath();  
    }               //System.out.println(jfc.getSelectedFile().getName());        
            }
        });

用户在点击按钮后,将自动弹出文件选择框,效果如下:

JAVA Swing图形化编程(一)文件选择器JFileChooser_第1张图片

你可能感兴趣的:(编程语言)