fork download
  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. package grilvcu.view;
  7.  
  8. import java.awt.BorderLayout;
  9. import java.awt.Dimension;
  10. import java.awt.event.MouseEvent;
  11. import java.awt.event.MouseListener;
  12. import javax.swing.JFrame;
  13. import javax.swing.JOptionPane;
  14. import javax.swing.JPanel;
  15. import javax.swing.JScrollPane;
  16. import javax.swing.JSplitPane;
  17. import javax.swing.JTree;
  18. import javax.swing.tree.DefaultMutableTreeNode;
  19.  
  20. /**
  21.  *
  22.  * @author I'msimple
  23.  */
  24. public class DemoJTree {
  25.  
  26. JFrame frame;
  27. JPanel jpnTree;
  28. JPanel jpnTree00;
  29. JSplitPane jsplit;
  30. JTree tree;
  31.  
  32.  
  33.  
  34. public DemoJTree(String text) {
  35.  
  36. initContainer();
  37.  
  38. initComponent();
  39.  
  40. // setAction();
  41. frame.setTitle(text);
  42. frame.setVisible(true);
  43. }
  44.  
  45. private void setAction() {
  46.  
  47. tree.addMouseListener(new MouseListener() {
  48. @Override
  49. public void mouseClicked(MouseEvent e) {
  50. //getLastSelectedPathComponent chính la node tren giao dien duoc chon
  51. Object obt = tree.getLastSelectedPathComponent();
  52.  
  53. JOptionPane.showMessageDialog(null,node.getUserObject());
  54.  
  55. }
  56.  
  57. @Override
  58. public void mousePressed(MouseEvent e) {
  59. throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
  60. }
  61.  
  62. @Override
  63. public void mouseReleased(MouseEvent e) {
  64. throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
  65. }
  66.  
  67. @Override
  68. public void mouseEntered(MouseEvent e) {
  69. throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
  70. }
  71.  
  72. @Override
  73. public void mouseExited(MouseEvent e) {
  74. throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
  75. }
  76. });
  77.  
  78.  
  79. }
  80. private void initContainer() {
  81. frame = new JFrame();
  82. frame.setLayout(new BorderLayout());
  83. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  84. frame.setSize(400,600);
  85. frame.setLocationRelativeTo(null);
  86. }
  87.  
  88. private void initComponent() {
  89. //Tao jtree
  90. jpnTree = new JPanel(new BorderLayout());
  91. jpnTree00 = new JPanel();
  92. jpnTree.setPreferredSize(new Dimension(300, 0));
  93.  
  94.  
  95. //Tao danh sach cho jtree bang TreeNode , treeNode cha la root
  96. root = new DefaultMutableTreeNode("Boy TMU");
  97. //Tao treenote con cua root
  98. DefaultMutableTreeNode phtgv = new DefaultMutableTreeNode("Phong hop tac giang vien");
  99. root.add(phtgv);
  100. DefaultMutableTreeNode phkd = new DefaultMutableTreeNode("Phong kinh doanh");
  101. root.add(phkd);
  102. DefaultMutableTreeNode phkt = new DefaultMutableTreeNode("Phong ke toan");
  103. root.add(phkt);
  104. DefaultMutableTreeNode phctsv = new DefaultMutableTreeNode("Phong cong tac sinh vien");
  105. root.add(phctsv);
  106. //Tao cac nhan vien trong phong
  107. DefaultMutableTreeNode nv00 = new DefaultMutableTreeNode("Nguyen Van A");
  108. phtgv.add(nv00);
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115. tree = new JTree(root);
  116. tree.expandRow(0);
  117.  
  118.  
  119. jsc = new JScrollPane(tree,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
  120. jpnTree.add(jsc,BorderLayout.CENTER);
  121.  
  122.  
  123.  
  124. //Chung ta them jtree vao mot jsplit
  125.  
  126. jsplit = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,jpnTree,jpnTree00);
  127. jsplit.setOneTouchExpandable(true);
  128.  
  129.  
  130. frame.add(jsplit,BorderLayout.CENTER);
  131.  
  132.  
  133.  
  134.  
  135.  
  136. }
  137.  
  138.  
  139. public static void main(String[] args) {
  140. new DemoJTree("JTREE");
  141. }
  142.  
  143. }
  144.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
Main.java:24: error: class DemoJTree is public, should be declared in a file named DemoJTree.java
public class DemoJTree {
       ^
1 error
stdout
Standard output is empty