Advertisement
Guest User

Untitled

a guest
Dec 19th, 2014
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.01 KB | None | 0 0
  1. /*
  2. * To change this license header, choose License Headers in Project Properties.
  3. * To change this template file, choose Tools | Templates
  4. * and open the template in the editor.
  5. */
  6.  
  7. /**
  8. *
  9. * @author master
  10. */
  11. import java.awt.*;
  12. import java.awt.event.ActionEvent;
  13. import java.awt.event.ActionListener;
  14. import java.io.File;
  15. import javax.swing.*;
  16. import javax.swing.tree.DefaultMutableTreeNode;
  17. import javax.swing.tree.DefaultTreeModel;
  18. import javax.swing.tree.TreeNode;
  19.  
  20. public class Problem4 extends JFrame implements ActionListener{
  21. File [] files;
  22. File file;
  23. DefaultMutableTreeNode nod;
  24. JTree jt;
  25. JTextField jtf;
  26. DefaultTreeModel dtm;
  27.  
  28. @Override
  29. public void actionPerformed(ActionEvent e) {
  30. file = new File(jtf.getText());
  31. nod = new DefaultMutableTreeNode();
  32. dirlist(file, nod);
  33. dtm.setRoot(nod);
  34. dtm.reload();
  35. jt.setModel(dtm);
  36. }
  37.  
  38. /* Functia recursiva de creare a arborelui pe baza unui director dat. */
  39. static void dirlist ( File d, DefaultMutableTreeNode r ) {
  40. if( !d.isDirectory() ) return;
  41. File [] files = d.listFiles(); // fisiere din directorul d
  42. for( int i = 0; i < files.length; i ++ ){
  43. File file = files[i];
  44. DefaultMutableTreeNode s = new DefaultMutableTreeNode( file );
  45. r.add( s );
  46. dirlist( file, s );
  47. }
  48. }
  49.  
  50. Problem4(){
  51. this.setLayout(new FlowLayout());
  52. jtf = new JTextField("");
  53. jtf.setPreferredSize(new Dimension(200, 30));
  54. jtf.addActionListener(this);
  55. this.add(jtf);
  56.  
  57. dtm = new DefaultTreeModel(nod);
  58. jt = new JTree(dtm);
  59. jt.setPreferredSize(new Dimension(500,700));
  60. this.add(jt);
  61. this.pack();
  62. this.setVisible(true);
  63. this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  64. }
  65.  
  66. public static void main(String args[]){
  67. Problem4 s = new Problem4();
  68.  
  69. }
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement