📄 jtreedemo.java
字号:
/*
* $Header$
* $Date$
* $Revision$
* Copyright (C) 2003-2004 CIC, Tsinghua Univ.
*/
package jcase.gui.swing;
import java.awt.BorderLayout;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.JTree;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.TreePath;
/**
* JTreeDemo
*/
public class JTreeDemo extends BaseSwingDemo {
JTextField jtf;
JTree tree;
protected void init() {
setLayout(new BorderLayout());
add(createTree(), BorderLayout.CENTER);
jtf = new JTextField(30);
add(jtf, BorderLayout.SOUTH);
}
/**
* @see jcase.gui.swing.BaseSwingDemo#getTitle()
*/
public String getTitle() {
return "JTreeDemo";
}
public JScrollPane createTree() {
DefaultMutableTreeNode top = new DefaultMutableTreeNode("音乐");
DefaultMutableTreeNode classical = new DefaultMutableTreeNode("古典");
DefaultMutableTreeNode pop = new DefaultMutableTreeNode("流行音乐");
DefaultMutableTreeNode jazz = new DefaultMutableTreeNode("爵士");
DefaultMutableTreeNode rock = new DefaultMutableTreeNode("摇滚");
top.add(classical);
top.add(pop);
top.add(jazz);
top.add(rock);
classical.add(new DefaultMutableTreeNode("Beethoven-Six String Quartets"));
classical.add(new DefaultMutableTreeNode("Beethoven-Grosse Fugue for String Quartets"));
classical.add(new DefaultMutableTreeNode("Mozart-Piano Concerto No. 12"));
pop.add(new DefaultMutableTreeNode("Celine Dion-Another Year Has Gone By"));
pop.add(new DefaultMutableTreeNode("Celine Dion-Because You Loved Me"));
pop.add(new DefaultMutableTreeNode("Faye Wang-Eys On Me"));
jazz.add(new DefaultMutableTreeNode("Albert Ayler-My Name is Albert Ayler"));
jazz.add(new DefaultMutableTreeNode("Albert Ayler-Billie's Bounce"));
jazz.add(new DefaultMutableTreeNode("Chet Baker-Let's Get Lost"));
jazz.add(new DefaultMutableTreeNode("Chet Baker-This Is Always"));
DefaultMutableTreeNode beetle = new DefaultMutableTreeNode("The Beetles");
beetle.add(new DefaultMutableTreeNode("A Hard Day's Night"));
beetle.add(new DefaultMutableTreeNode("If I Fell"));
rock.add(beetle);
DefaultMutableTreeNode garv = new DefaultMutableTreeNode("Harvin Garvel");
garv.add(new DefaultMutableTreeNode("Is This Real"));
garv.add(new DefaultMutableTreeNode("Simple Life"));
garv.add(new DefaultMutableTreeNode("Just A Dog"));
rock.add(garv);
rock.add(new DefaultMutableTreeNode("Steve Miller Band-Fly Like An Eagle"));
tree = new JTree(top);
tree.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent me) {
showSelect(me);
}
});
return new JScrollPane(tree);
}
private void showSelect(MouseEvent me){
TreePath tp = tree.getPathForLocation(me.getX(), me.getY());
if (tp != null)
jtf.setText(tp.toString());
else
jtf.setText("");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -