Ávore somente com as unidades de disco

2 respostas
Rpsl

Olá pessoal,

Gostaria de saber como faço para representar uma árvore somente com os discos existentes no sistema, não sendo necessário exibir suas subpastas e arquivos.

Somente um ponto, com as unidades de disco como filhas.

Estou pensando em fazer com JTree, mas naum tenho nenhuma ideia de como fazer… :?

Obrigado pela a atenção.

Reginaldo

2 Respostas

andre.santos

Você pode user o JTree para representar a árvore e usar o File.listRoots() para pegar as unidades disponíveis no seu micro. Veja um exemplo:

public static void main(String[] args) {
		File[] raizes = File.listRoots(); //Aqui é retornado um Array de File, cada índice contém um dispositivo de armazenamento
		
		//JFrame para colocar o JTree
		JFrame jFrame = new JFrame();
		JTree jTree;
		
		jFrame.setLayout(new GridLayout());
		
		//Definindo o nó raiz do JTree
		DefaultMutableTreeNode root = new DefaultMutableTreeNode("Meu Computador");
		TreeModel model = new DefaultTreeModel(root);
		
		//Populando o JTree com as unidades
		for(File raiz : raizes){
			root.add(new DefaultMutableTreeNode(raiz.getAbsolutePath()));
		}
		
		jTree = new JTree(model);
		
		jFrame.add(jTree);
		
		jFrame.setSize(400, 600);
		jFrame.setVisible(true);
	}

Espero ter ajudado.

Abraços!

Rpsl

\o/ \o/ \o/
Cara era isso msm q eu estava querendo :smiley:

Obrigado pela a dica :wink:

Criado 9 de março de 2009
Ultima resposta 9 de mar. de 2009
Respostas 2
Participantes 2