📄 treedemo.java
字号:
import javax.swing.*;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.event.TreeSelectionListener;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.tree.TreeSelectionModel;
import java.awt.*;
import java.awt.event.*;
public class TreeDemo extends JFrame {
String[][] data = {{"中国古典音乐","梁祝","高山流水","沧海一声笑","茉莉花"},
{"外国古典音乐","yeah","i wanna love you","tomorrow once more"},
{"流行音乐","国内","国外","港台"},
{"歌手","亚瑟小子","古天乐","周杰伦"},
};
public TreeDemo() {
super("音乐浏览");
DefaultMutableTreeNode top = new DefaultMutableTreeNode("音乐");
for( int i = 0; i<data.length; i++){
top.add(createBranch(data[i]));
}
final JTree tree = new JTree(top);
tree.getSelectionModel().setSelectionMode
(TreeSelectionModel.SINGLE_TREE_SELECTION);
tree.addTreeSelectionListener(new TreeSelectionListener() {
public void valueChanged(TreeSelectionEvent e) {
DefaultMutableTreeNode node = (DefaultMutableTreeNode)
tree.getLastSelectedPathComponent();
if (node == null) return;
Object nodeInfo = node.getUserObject();
JOptionPane.showMessageDialog(null,nodeInfo.toString());
}
});
JScrollPane treeView = new JScrollPane(tree);
getContentPane().add(treeView, BorderLayout.CENTER);
}
DefaultMutableTreeNode createBranch(String[] data){
DefaultMutableTreeNode category = new DefaultMutableTreeNode(data[0]);
DefaultMutableTreeNode book = null;
for( int i =1; i<data.length; i++){
book = new DefaultMutableTreeNode(data[i]);
category.add(book);
}
return category;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -