0
여기 내 코드가 jtree의 현재 시스템에있는 모든 드라이브를 표시 할 수 없습니다. 반환되는 모든 것은 임의의 Java 파일이며, 초보자이며 많은 것에 대해 알지 못합니다. 이를 수행하는 방법,JTree에서 시스템의 모든 드라이브 표시
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();
}
}
이 변경 완료하고 스레드 예외를 도시 본 "메인"java.lang.NullPointerException이 Arrears.NewJTreeList.main에서 \t (NewJTreeList.java:36) 라인 36은 입니다. File [] roots = fileSystemView.getRoots(); –
어쩌면 앱에 이러한 정보를 얻을 수있는 권한이 없을 수도 있습니다. – KernelPanic
* "예외를 표시합니다"* 1. 더 빨리 도움을 받으려면 [SSCCE] (http://sscce.org/)를 게시하십시오. 2. 항상 오류 및 예외 출력을 복사/붙여 넣기하십시오. 3. HTML, XML과 같은 코드, 입출력 및 구조화 된 문서에 코드 형식을 사용하십시오. 이를 위해 샘플을 선택하고 메시지/편집 양식 위에있는 '{}'버튼을 클릭하십시오. –