📄 swingtree4.java
字号:
package src1;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import javax.swing.BoxLayout;
import javax.swing.ImageIcon;
import javax.swing.JScrollPane;
import javax.swing.JTree;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeCellRenderer;
import javax.swing.event.*;
import javax.swing.*;
import javax.swing.tree.*;
public class SwingTree4 extends SwingTree implements TreeSelectionListener{
DefaultMutableTreeNode 退出 ;
DefaultMutableTreeNode 退出系统;
DefaultMutableTreeNode 取消 ;
public MainForm mainForm;
public DefaultTreeCellRenderer cellRenderer ;
public SwingTree4(MainForm mainForm)
{
this();
this.mainForm= mainForm;
}
public SwingTree4() {
// TODO 自动生成构造函数存根
退出 = new DefaultMutableTreeNode("退出系统");
退出系统 = new DefaultMutableTreeNode("确认退出系统");
取消 = new DefaultMutableTreeNode("取消");
退出.add(退出系统);
//退出.add(取消);
root = new JTree(退出);
root.putClientProperty("JTree.lineStyle", "Horizontal");
cellRenderer = (DefaultTreeCellRenderer)root.getCellRenderer();
cellRenderer.setLeafIcon(new ImageIcon("./src/icons/9.gif"));
cellRenderer.setOpenIcon(new ImageIcon("./src/icons/8.gif"));
cellRenderer.setClosedIcon(new ImageIcon("./src/icons/10.gif"));
cellRenderer.setFont(new Font("宋体",Font.PLAIN,12));
cellRenderer.setBackgroundNonSelectionColor(new Color(240,255,255));
cellRenderer.setBackgroundSelectionColor(Color.green);
// cellRenderer.setBorderSelectionColor(Color.green);
cellRenderer.setTextNonSelectionColor(Color.black);
cellRenderer.setTextSelectionColor(Color.red);
root.setBackground(new Color(240,255,255));
this.setLayout (new BoxLayout (this, BoxLayout.X_AXIS));
this.setPreferredSize (new Dimension (200, 480));
this.add (new JScrollPane (root));
root.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
root.addTreeSelectionListener(this);
}
public void valueChanged(TreeSelectionEvent e)
{
Music sound = new Music("amp1.wav");
JTree tree = (JTree) e.getSource();
DefaultMutableTreeNode selectedNode = (DefaultMutableTreeNode)tree.getLastSelectedPathComponent();
if(selectedNode== 退出系统)
{
int type = JOptionPane.showConfirmDialog(mainForm, "确认退出?",null,JOptionPane.YES_NO_OPTION);
if(type == JOptionPane.YES_OPTION)
{
sound = new Music("goodbye.wav");
try{
Thread.sleep(1000);
}
catch(Exception e1)
{
}
System.exit(0);
}
}
if(selectedNode== 取消)
{
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -