我正在尝试使用FileDialog文件选择器,因为我真的需要java应用程序来拥有原生苹果文件选择器(我知道我们都讨厌讨厌缺乏可移植性但这是我需要的)。我试图让我的文件选择器允许用户选择以.ws结尾的文件。这是我试过的:
FileDialog fd = new
FileDialog(_sharedInstance,rsc.str("480"),FileDialog.LOAD);
// fd.setFile("*.ws");
class WSFilter implements FilenameFilter {
public boolean accept(File dir, String name) {
return (name.endsWith(".ws"));
}
};
FilenameFilter wsFilter = new WSFilter();
fd.setFilenameFilter(wsFilter);
fd.setDirectory(_projectsBaseDir.getPath());
fd.setLocation(50,50);
// fd.setFile("*");
fd.setVisible(true);
由于某种原因,我的文件选择器不允许我选择任何文件。有任何想法吗?
答案 0 :(得分:3)
答案是我需要这个调用:System.setProperty(“apple.awt.fileDialogForDirectories”,“false”);
答案 1 :(得分:1)
为什么不使用JFileChooser?
JFileChooser fileChooser = new JFileChooser(new File(filename));
fileChooser.addChoosableFileFilter(new MyFilter());
class MyFilter extends javax.swing.filechooser.FileFilter {
public boolean accept(File file) {
String filename = file.getName();
return filename.endsWith(".java");
}
public String getDescription() {
return "*.java";
}
}
答案 2 :(得分:1)