本文主要是介绍java swing 中的FileDialog,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.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)";
}
});
//可以反复使用setFileFilter方法设置JFileChooser的选择类型
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/yuvmen/archive/2007/11/08/1874039.aspx
这篇关于java swing 中的FileDialog的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!