加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

FileDialog使用方法

(2011-01-02 10:09:08)
FileDialog使用方法:

FileDialog fd=new FileDialog(new Frame(),"测试",FileDialog.LOAD);
FilenameFilter ff
=new FilenameFilter(){
  
public boolean accept(File dir, String name) {
   
if (name.endsWith("jpg")){
    
return true;
    }
   
return false;
   }
  };
  fd.setFilenameFilter(ff);
fd.setVisible(
true);
System.out.println(fd.getDirectory()
+fd.getFile());

但在Windows中FileDialog
+ FilenameFilter无法正常工作, jdoc的原注释为:Filename filters do not function in Sun's reference implementation for Microsoft Windows.

2.FileDialog + FilenameFilter可以用JFileChooser + javax.swing.filechooser.FileFilter 来代替,jdoc中的例子如下:

    JFileChooser chooser
= new JFileChooser();
   
// Note: source for ExampleFileFilter can be found in FileChooserDemo,
   
// under the demo/jfc directory in the Java 2 SDK, Standard Edition.
    ExampleFileFilter filter = new ExampleFileFilter();
    filter.addExtension(
"jpg");
    filter.addExtension(
"gif");
    filter.setDescription(
"JPG & GIF Images");
    chooser.setFileFilter(filter);
   
int returnVal = chooser.showOpenDialog(parent);
   
if(returnVal == JFileChooser.APPROVE_OPTION) {
       System.out.println(
"You chose to open this file: " +
            chooser.getSelectedFile().getName());
    }

转应用实例:
    JFileChooser filechooser
= new JFileChooser();//创建文件选择器
    filechooser.setCurrentDirectory(new File("."));//设置当前目录
    filechooser.setAcceptAllFileFilterUsed(false);
   
//显示所有文件
    filechooser.addChoosableFileFilter(new javax.swing.filechooser.FileFilter() {
     
public boolean accept(File f) {
       
return true;
      }
     
public String getDescription() {
       
return "所有文件(*.*)";
      }
    });
   
//显示JAVA源文件
    filechooser.setFileFilter(new javax.swing.filechooser.FileFilter() {
     
public boolean accept(File f) { //设定可用的文件的后缀名
        if(f.getName().endsWith(".java")||f.isDirectory()){
         
return true;
        }
       
return false;
      }
     
public String getDescription() {
       
return "JAVA源程序(*.java)";
      }
    });

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有