java - 在JTree中显示系统中的所有驱动器

标签 java swing jtree

这是我的代码,我无法在jtree中显示当前系统中的所有驱动器,它返回的只是一些随机的java文件,我是一个初学者,不太了解它是如何完成的,正在等待帮助..

import java.awt.GridLayout;
import java.io.File;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTree;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.TreeSelectionModel;


public class JTreeLits extends JPanel
{
 JTree tree;
 public JTreeLits()
 {
        super(new GridLayout(1,0));
        DefaultMutableTreeNode rooter = new DefaultMutableTreeNode("FileSystem");
        DefaultMutableTreeNode parent;
        File [] roots = File.listRoots();
        parent = new DefaultMutableTreeNode(roots);
        rooter.add(parent);

        tree = new JTree(rooter);
        tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
        add(tree);
 }
 private static void createAndShowGUI()
 {
        JFrame frame = new JFrame("TreeDemo");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.add(new JTreeLits());
        frame.pack();
        frame.setVisible(true);
        frame.setSize(250,400);
 }
 public static void main(String[] args)
 {
    createAndShowGUI();
 }
}  

最佳答案

查看FileSystemView.getRoots() 1,其中:

Returns all root partitions on this system. For example, on Windows, this would be the "Desktop" folder, while on DOS this would be the A: through Z: drives.

  1. File Browser GUI中所示.

关于java - 在JTree中显示系统中的所有驱动器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16729903/

相关文章:

java - 按时间对来自 2 个或更多不同来源的帖子进行排序

java包 "mylist"不存在

java - JTree 中的桌面 View - Swing - 仅限 Windows

java - 使用路径检查 JTree 节点是否存在

java - setOnMouseEntered 不适用于 ListView 中的 ImageView

java - fragment 中的 bundle 为空

java - 如何在 MouseEnter 上为 JLabel 添加下划线

java - 如何让背景框的JtextField成为焦点?

Java 文本字段输入问题

java - 如何捕获JTree节点展开事件