Estou desenvolvendo uma aplicação, que grava as telas que ele gera em xml. Na lateral tenho um JTree, que mostra as telas do projeto, gostaria de abrir os arquivos desse diretorio e color os nomes desses arquivos no JTree, alguém tem alguma dica de como ao abrir o arquivo o Jtree pegar esses nomes do diretorio ??
Valeu Vini, eu tinha achado esse exemplo e compilei ele.
Mas queria saber como faço para quer os nomes do arquivo que terei no diretorio fique no JTree, eu queria que ele lesse os nomes dos arquivos que terei em determinada pasta, e cada arquivo fosse uma ramificaçao.
Para entender melhor meu software gera telas, ai essas telas salvo e abro em xml de um determinado diretorio que salvo, eu queria que ao abrir, o JTree pega-se o nome dos arquivos desse diretorio,
Valeu Vini, vou ler, acho que é isso que preciso, você já implantou algo parecido ??
Valeu
Diogo
D
Diogo_de_Jesus
e ai Vini, blz, estou aqui novamente, a classe abaixo
botei ela para rodar mas só aparece uma tela em branco
O que tenho que mudar no código
Valeu
Diogo
D
Diogo_de_Jesus
Galera, alguém sabe por que esse exemplo chama o FRAME em branco ??
importjavax.swing.*;importjavax.swing.tree.*;importjava.awt.event.*;importjava.awt.*;importjava.util.*;importjava.io.*;publicclassSimpleTreeextendsJPanel{JTreetree;DefaultMutableTreeNoderoot;publicSimpleTree(){root=newDefaultMutableTreeNode("root",true);getList(root,newFile("c:/temp"));setLayout(newBorderLayout());tree=newJTree(root);tree.setRootVisible(false);add(newJScrollPane((JTree)tree),"Center");}publicDimensiongetPreferredSize(){returnnewDimension(200,120);}publicvoidgetList(DefaultMutableTreeNodenode,Filef){if(!f.isDirectory()){// We keep only JAVA source file for display in this HowToif(f.getName().endsWith("java")){System.out.println("FILE - "+f.getName());DefaultMutableTreeNodechild=newDefaultMutableTreeNode(f);node.add(child);}}else{System.out.println("DIRECTORY - "+f.getName());DefaultMutableTreeNodechild=newDefaultMutableTreeNode(f);node.add(child);FilefList[]=f.listFiles();for(inti=0;i<fList.length;i++)getList(child,fList[i]);}}publicstaticvoidmain(Strings[]){MyJFrameframe=newMyJFrame("Directory explorer");}}classWindowCloserextendsWindowAdapter{publicvoidwindowClosing(WindowEvente){Windowwin=e.getWindow();win.setVisible(false);System.exit(0);}}classMyJFrameextendsJFrame{JButtonb1,b2,b3;SimpleTreepanel;MyJFrame(Strings){super(s);panel=newSimpleTree();getContentPane().add(panel,"Center");setSize(300,300);setVisible(true);setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);addWindowListener(newWindowCloser());}}
D
Diogo_de_Jesus
Balera esse código eu consigo somente ler o diretorio para o JTree, na verdade queria ler o diretorio na raiz e nas ramificações os arquivos que estão nessa pasta.
O código é esse
packagesimpletree;importjavax.swing.*;importjavax.swing.tree.*;importjava.awt.event.*;importjava.awt.*;importjava.util.*;importjava.io.*;publicclassSimpleTreeextendsJPanel{JTreetree;DefaultMutableTreeNoderoot;publicSimpleTree(){root=newDefaultMutableTreeNode("root",true);getList(root,newFile("e:/fonts"));setLayout(newBorderLayout());tree=newJTree(root);tree.setRootVisible(false);add(newJScrollPane((JTree)tree),"Center");}publicDimensiongetPreferredSize(){returnnewDimension(200,120);}publicvoidgetList(DefaultMutableTreeNodenode,Filef){if(!f.isDirectory()){// We keep only JAVA source file for display in this HowToif(f.getName().endsWith("java")){System.out.println("FILE - "+f.getName());DefaultMutableTreeNodechild=newDefaultMutableTreeNode(f);node.add(child);}}else{System.out.println("DIRECTORY - "+f.getName());DefaultMutableTreeNodechild=newDefaultMutableTreeNode(f);node.add(child);FilefList[]=f.listFiles();for(inti=0;i<fList.length;i++)getList(child,fList[i]);}}publicstaticvoidmain(Strings[]){MyJFrameframe=newMyJFrame("Directory explorer");}}classWindowCloserextendsWindowAdapter{publicvoidwindowClosing(WindowEvente){Windowwin=e.getWindow();win.setVisible(false);System.exit(0);}}classMyJFrameextendsJFrame{JButtonb1,b2,b3;SimpleTreepanel;MyJFrame(Strings){super(s);panel=newSimpleTree();this.getContentPane().add(panel,"Center");this.setSize(300,300);this.setVisible(true);setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);addWindowListener(newWindowCloser());}}