⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainclass.java

📁 采用java技术开发的树形控件
💻 JAVA
字号:
import java.awt.*;
import javax.swing.tree.*;
import java.util.*;
import javax.swing.*;
import java.awt.Rectangle;
import java.awt.event.MouseEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.event.TreeSelectionListener;

public class MainClass 
{ 
  JFrame f;
  JPanel p1;
  JPanel p2;
  JPanel p3;
  JPanel p4;
	JScrollPane ScrollPane;
	JScrollPane ScrollPane1;
	
	JTree tree;
	TreeSelectionModel sm;
	DefaultMutableTreeNode biology;
	DefaultMutableTreeNode animal;
	DefaultMutableTreeNode animal0; 
	DefaultMutableTreeNode mammal;
  DefaultMutableTreeNode horse0;
  DefaultMutableTreeNode horse1;
  DefaultMutableTreeNode horse2;
  DefaultMutableTreeNode horse3;
  DefaultMutableTreeNode horse4;
  
  JPopupMenu jPopupMenu1 = new JPopupMenu();
  JMenuItem  jMenuItem1 = new JMenuItem();
  JMenuItem  jMenuItem2 = new JMenuItem();
  JMenuItem  jMenuItem3 = new JMenuItem();
  
  JMenu m1;
  JMenu m2;
  JMenu m3;
  JMenu m4;
  JMenu m5;
  JMenu m6;
  JMenu m7;
  JMenu m8;
  JMenu m9;
  
  JMenuItem m11;
  JMenuItem m12;
  JMenuBar mb;
  
  JButton b1,b2,b3,b4;
 
  public void show()
  {
    f = new JFrame("烟花爆竹流向管理系统"); 
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    //Object[] letters= {"a", "b", "c", "d", "e"};
    
    //JTree tree = new JTree (letters);
    biology = new DefaultMutableTreeNode ("烟花爆竹流向管理系统");
    animal  = new DefaultMutableTreeNode ("进货管理");
    animal0 = new DefaultMutableTreeNode ("商品进货");    
    mammal  = new DefaultMutableTreeNode ("销货管理");
    horse0  = new DefaultMutableTreeNode ("库存管理");
    horse1  = new DefaultMutableTreeNode ("统计管理");
    horse2  = new DefaultMutableTreeNode ("日常维护");
    horse3  = new DefaultMutableTreeNode ("系统维护");
    horse4  = new DefaultMutableTreeNode ("流向维护");
    
    
    jMenuItem1.setText("添加");
    jMenuItem2.setText("删除");
    jMenuItem3.setText("重命名");
    
    jPopupMenu1.add(jMenuItem1);
    jPopupMenu1.add(jMenuItem2);
    jPopupMenu1.add(jMenuItem3);
    
    m1=new JMenu("文件");
    m11=new JMenuItem("打开");
    m12=new JMenuItem("保存");
    m1.add(m11);
    m1.add(m12);
    m2=new JMenu("进货管理");
    m3=new JMenu("销货管理");
    m4=new JMenu("库存管理");
    m5=new JMenu("统计管理");
    m6=new JMenu("日常管理");
    m7=new JMenu("系统管理");
    m8=new JMenu("流向管理");
    m9=new JMenu("系统帮助");
    
    mb=new JMenuBar();
    mb.add(m1);
    mb.add(m2);
    mb.add(m3);
    mb.add(m4);
    mb.add(m5);
    mb.add(m8);
    mb.add(m6);
    mb.add(m7);
    mb.add(m9);
    
    biology.add (animal);
    biology.add (mammal);
    animal.add (animal0);
    biology.add (horse0);
    biology.add (horse1);
    biology.add (horse4);
    biology.add (horse2);
    biology.add (horse3);    
      
    tree = new JTree (biology);
    
    sm=new DefaultTreeSelectionModel();
    sm.setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
    tree.setSelectionModel(sm);
    tree.addTreeSelectionListener(new TreeSelectionListener()
    {
       public void valueChanged(TreeSelectionEvent e)
       {
            Object tp[]=e.getPath().getPath();
            System.out.println(tp[tp.length-1].toString()); //显示所选节点的值
            StringBuffer sb=new StringBuffer();
            for(int i=1;i<tp.length;i++)
            {
                 sb.append(tp[i]+"/");
            }
            
            {
                 System.out.println(new String(sb));  //显示所选节点所经过的路径                 
                 String ss=new String(sb);
                 System.out.println("-------------"+ss+"---------------");  //显示所选节点所经过的路径  
                 {
                 }
                 if(ss.equals("统计管理/"))
                 {
                 	    System.out.println("hong yu ke");
                 	    p4.add(b4);
                 	    p4.updateUI();//panel是JPanel的控件名
                 	    System.out.println("ok");   
                 }
                    
            }    
       }
     }
    );//增加选中节点的监听器
    
    tree.addMouseListener(new Tree_jTree1_mouseAdapter(this));
    b2=new JButton("hong yu ke");
    b3=new JButton("cheng yan qiu");
    b4=new JButton("li ming zhu");
    BorderLayout bl=new BorderLayout();
    f.setLayout(bl);
    f.setJMenuBar(mb);
    
    p1=new JPanel();
    p2=new JPanel();
    p3=new JPanel();
    p4=new JPanel();
    
    ScrollPane= new JScrollPane(tree); 
    ScrollPane1=new JScrollPane(b2); 
    
    p1.add(ScrollPane);
    p2.add(ScrollPane1);
    p3.add(b3);
    p3.add(b2);
    p3.add(b4);
    
    f.add(jPopupMenu1);
    f.add(p1,"West"); 
    f.add(p2,"Center"); 
    f.add(p3,"North"); 
    f.add(p4,"South");  
    f.setSize(700,550); 
    f.setVisible(true); 
  }
  
  public void jTree1_mouseReleased(MouseEvent e) 
  {
    if(e.isPopupTrigger())
    {
    	System.out.println("hong yu ke");
      jPopupMenu1.show(f,e.getX(),e.getY());
    }
  }
  public static void main(String args[]) 
  {
  	      MainClass f=new MainClass();
  	      f.show(); 
  }  
} 

class Tree_jTree1_mouseAdapter extends MouseAdapter 
{
  private MainClass adaptee;
  Tree_jTree1_mouseAdapter(MainClass adaptee) 
  {
    this.adaptee = adaptee;
  }

  public void mouseReleased(MouseEvent e) 
  {
    adaptee.jTree1_mouseReleased(e);
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -