Visualizzazione dei risultati da 1 a 5 su 5

Discussione: JTree[java]

  1. #1
    Utente di HTML.it L'avatar di Metflar
    Registrato dal
    Apr 2007
    Messaggi
    790

    JTree[java]

    ho creato un JTree e volevo sapere come faccio a metterci dentro tutte le cartelle e sottocartelle del mio file system?
    per ora riesco a prendere solo le cartelle principali ma mi mancano tutte le sotto cartelle

  2. #2
    Utente di HTML.it L'avatar di Metflar
    Registrato dal
    Apr 2007
    Messaggi
    790
    ci sn riuscito ma se faccio partire il programma dalla pen drive...ma se cerco di farlo dall'hard disk mi da nullpointerexception e nn riesco a capire perke.

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    senza codice non ti si può aiutare.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Metflar
    ci sn riuscito ma se faccio partire il programma dalla pen drive...ma se cerco di farlo dall'hard disk mi da nullpointerexception e nn riesco a capire perke.
    Ovviamente bisognerebbe vedere il codice che hai scritto. Così su due piedi è impossibile dire cosa non va.

    Se si deve scansionare un file-system in "profondità" in genere si usa un approccio "ricorsivo". Dovendo poi usare un JTree, l'ideale sarebbe usare un TreeModel e/o un TreeNode.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it L'avatar di Metflar
    Registrato dal
    Apr 2007
    Messaggi
    790
    ecco il pezzo di codice incriminato
    codice:
     
    javax.swing.tree.DefaultMutableTreeNode pather=new javax.swing.tree.DefaultMutableTreeNode("Root");
    jTree1 = new javax.swing.JTree();
    model1=(javax.swing.tree.DefaultTreeModel)jTree1.getModel();
    loadtree.loadTree(new java.io.File("/").listFiles(),pather);
    model1.setRoot(pather);
    
    model1.reload();
    jTree1.setModel(model1);
    jTree1.addTreeSelectionListener(new javax.swing.event.TreeSelectionListener(){
       public void valueChanged(javax.swing.event.TreeSelectionEvent e){
           nameNode=jTree1.getSelectionPath().getLastPathComponent().toString();
           
           
           if(nameNode!=null){
               String path=jTree1.getSelectionPath().toString();
               path=path.substring(1, path.length()-1);
               java.util.StringTokenizer st=new java.util.StringTokenizer(path,",",false);
               String p=new String();
               while(st.hasMoreTokens()){
                   p+=st.nextToken().trim()+"/";
               }
               p=p.substring(0,p.length()-1);
              
               model.addRow(new Object[]{nameNode,"",loadtree.type,"","",loadtree.d,p});
               
               }
       } 
    });
    jTree1.setSelectionRow(0);
    jTree1.setEditable(true);
    jScrollPane1.setViewportView(jTree1);
    jTree1.setDragEnabled(true);
    jTree1.setRootVisible(true);
    javax.swing.JPopupMenu popm=new javax.swing.JPopupMenu();
    javax.swing.JMenuItem del=new javax.swing.JMenuItem("Delete");
    del.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent e){
            int p=jTree1.getLeadSelectionRow();
            
            System.out.print(p);
    
        }
    });
    popm.add(del);
    PopupListener popupListener = new PopupListener(popm);
    jTree1.addMouseListener(popupListener);

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.