📄 treewindow.java
字号:
import javax.swing.JFrame;
import javax.swing.JSplitPane;
import javax.swing.JScrollPane;
import javax.swing.JTree;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.event.TreeSelectionListener;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.JPanel;
import javax.swing.JLabel;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
class TreeWindow extends JFrame implements TreeSelectionListener{
JSplitPane jSplitPane1=new JSplitPane();
JScrollPane jScrollPane1=new JScrollPane();
WelcomePane welcomePane1=new WelcomePane();
DefaultMutableTreeNode rootNode=new DefaultMutableTreeNode("本系统处理模块 ");
JTree jTree1=new JTree(rootNode);
TreeWindow(){
super("流行的Tree窗口示例");
setSize(600,500);
setDefaultCloseOperation(EXIT_ON_CLOSE);
//jSplitPane1.setDividerSize(2);
//jSplitPane1.setDividerLocation(160);
getContentPane().add(jSplitPane1);
jSplitPane1.setLeftComponent(jScrollPane1);
jSplitPane1.setRightComponent(welcomePane1);
//
jScrollPane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
jScrollPane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
jScrollPane1.getViewport().setView(jTree1);
initTree();
jTree1.expandRow(0);
jTree1.expandRow(1);
jTree1.expandRow(6);
//
jTree1.addTreeSelectionListener(this);
show();
}
void initTree(){
DefaultMutableTreeNode childNode1=new DefaultMutableTreeNode("项目监控");
rootNode.add(childNode1);
DefaultMutableTreeNode childNode2=new DefaultMutableTreeNode("项目计划");
childNode1.add(childNode2);
childNode2=new DefaultMutableTreeNode("项目核定");
childNode1.add(childNode2);
childNode2=new DefaultMutableTreeNode("每日巡视");
childNode1.add(childNode2);
childNode2=new DefaultMutableTreeNode("进展汇报");
childNode1.add(childNode2);
//
childNode1=new DefaultMutableTreeNode("项目核算");
rootNode.add(childNode1);
childNode2=new DefaultMutableTreeNode("成本录入");
childNode1.add(childNode2);
childNode2=new DefaultMutableTreeNode("成本复核");
childNode1.add(childNode2);
childNode2=new DefaultMutableTreeNode("帐目查阅");
childNode1.add(childNode2);
}
public void valueChanged(TreeSelectionEvent e){
DefaultMutableTreeNode selectedNode=(DefaultMutableTreeNode)jTree1.getLastSelectedPathComponent();
if(selectedNode.toString()=="项目计划"){
PlanPane planPane1=new PlanPane();
jSplitPane1.setRightComponent(planPane1);
}
else if(selectedNode.toString()=="项目核定"){
PlanCheck planCheck1=new PlanCheck();
jSplitPane1.setRightComponent(planCheck1);
}
}
public static void main(String[] args){
TreeWindow treeWindow1=new TreeWindow();
}
}
class WelcomePane extends JPanel{
JLabel jLabel1=new JLabel("生产项目管理系统-----Welcome!");
WelcomePane(){
add(jLabel1);
}
}
class PlanPane extends JPanel implements ActionListener{
JButton jButton1=new JButton("项目计划");
PlanPane(){
jButton1.addActionListener(this);
add(jButton1);
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==jButton1){
System.out.println("项目计划按钮被单击");
}
}
}
class PlanCheck extends JPanel implements ActionListener{
JButton jButton1=new JButton("项目核定");
PlanCheck(){
jButton1.addActionListener(this);
add(jButton1);
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==jButton1){
System.out.println("项目核定按钮被单击");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -