我想在jfilechooser中显示当前目录的父文件夹。
我想要显示该文件夹与..
它是指父文件夹jFilechooser显示文件夹
回答
使用构造函数,这样的文件路径作为参数。
JFileChooser jfc = new JFileChooser(".\\..");
我们现在可以使用Java 7了,对于大多数人来说Java 1.4.2已经有点过时了...恕我直言 – MadProgrammer 2013-02-27 05:56:12
+ 1更新后的链接 – 2013-02-27 06:00:48
这是实现您请求的功能的“尝试”,我遇到的问题是无法完全复制系统正在执行的操作。
基本上,目录组合框需要某种本地File
对象(在Windows的情况下,为sun.awt.shell.Win32ShellFolder2
)。但是我们似乎没有任何方法可以在提供的API中创建它们(并且您不希望手动创建它们,因为它会打破外观和跨平台功能)。
import core.util.MethodInvoker;
import java.awt.EventQueue;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import javax.swing.JFileChooser;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.filechooser.FileSystemView;
import javax.swing.plaf.ComponentUI;
public class TestFileChooser {
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
try {
System.out.println(UIManager.getSystemLookAndFeelClassName());
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
}
JFileChooser fc = new JFileChooser(new MyFileSystemView());
fc.showOpenDialog(null);
}
});
}
public static class MyFileSystemView extends FileSystemView {
@Override
public File[] getFiles(File dir, boolean useFileHiding) {
File[] files = super.getFiles(dir, useFileHiding);
List<File> fileList = new ArrayList<>(Arrays.asList(files));
if (!isFileSystemRoot(dir)) {
File newPath = FileSystemView.getFileSystemView().createFileObject(dir, "/..");
fileList.add(0, newPath);
}
files = fileList.toArray(files);
return files;
}
@Override
public File createNewFolder(File containingDir) throws IOException {
File newFolder = new File(containingDir + File.separator + "New Folder");
if (!newFolder.mkdir()) {
newFolder = null;
}
return newFolder;
}
}
}
谢谢你..那就是我需要的.. :) ..我要在我的代码中试试这个... – Complicated 2013-02-27 11:50:03
我为VFSFilechooser应用相同的代码..但它不工作 – Complicated 2013-02-27 13:19:02
- 1. JFileChooser不显示单个文件
- 2. JFileChooser上不显示扩展名文件
- 3. JFileChooser组件显示奇怪
- 4. JFileChooser没有显示
- 5. 使用JFileChooser选择文件夹
- 6. 显示空文件夹
- 7. Apache文件夹未显示
- 8. 显示文件夹项目
- 9. HTML显示文件夹
- 10. JFileChooser中没有显示
- 11. NullPointerException异常显示的JFileChooser
- 12. .git文件夹显示为.git文件?
- 13. JFileChooser不显示应用过滤器的文件
- 14. JFileChooser在JTextField中显示多个选定文件
- 15. 如何始终在JFileChooser中显示文件名?
- 16. 如何在JFileChooser中显示文件的自定义图标?
- 17. 如何让JFileChooser突出显示所选文件
- 18. eclipse不会显示目标文件夹中的类文件夹
- 19. 文件夹浏览对话框没有显示文件夹
- 20. jniLibs文件夹显示为Android Studio中的cpp文件夹
- 21. 显示文件夹并建立这些文件夹的链接
- 22. 显示从根文件夹到子文件夹的请求
- 23. php在文件夹和子文件夹中显示图像
- 24. 如何显示选定文件夹中的子文件夹?
- 25. 显示子文件夹作为主文件夹
- 26. 显示文件夹中的文件,第一个文件不显示
- 27. 批处理文件显示文件夹大小,但不显示该子文件夹中子文件夹和子文件夹的大小
- 28. 我想使用JFileChooser查看和显示文件,无法弄清楚如何显示文件
- 29. 在Visual Studio中显示文件夹
- 30. 在NSPopUpButton中显示文件夹
'jfilechooser.setCurrentDirectory(jfilechooser.getCurrentDirectory()。的getParent())'??这将抛出一个'null'指针例外,如果你在一个根级文件夹... – MadProgrammer 2013-02-27 05:50:35
像其他文件夹那里,当我们去任何目录我想要显示父目录...当有人点击该文件夹。 。它移出当前目录并进入其父目录 – Complicated 2013-02-27 05:54:00
因此,你想要显示类似树的东西,父文件夹作为根节点,并且其中的文件作为子节点? – MadProgrammer 2013-02-27 05:55:34