📄 treedelnodeframe.java
字号:
package third;
import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.swing.*;
import javax.swing.JPanel;
import javax.swing.JTree;
import com.borland.jbcl.layout.XYLayout;
import com.borland.jbcl.layout.*;
import javax.swing.JScrollPane;
import javax.swing.JButton;
import javax.swing.JPopupMenu;
import javax.swing.JMenuItem;
import javax.swing.JMenu;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.tree.DefaultMutableTreeNode;
import java.awt.event.MouseEvent;
import java.awt.event.MouseAdapter;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2007</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class TreeDelNodeFrame extends JFrame {
JPanel contentPane;
XYLayout xYLayout1 = new XYLayout();
JScrollPane jScrollPane1 = new JScrollPane();
JTree tree = new JTree();
JButton btnDelete = new JButton();
JButton btnExit = new JButton();
JPopupMenu popumnu1 = new JPopupMenu();
JMenuItem mnuDel = new JMenuItem();
JMenuItem mnuExit = new JMenuItem();
JMenu mnuEdit = new JMenu();
JMenuItem mnuClock = new JMenuItem();
JMenuItem mnuUnclock = new JMenuItem();
public TreeDelNodeFrame() {
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
/**
* Component initialization.
*
* @throws java.lang.Exception
*/
private void jbInit() throws Exception {
contentPane = (JPanel) getContentPane();
contentPane.setLayout(xYLayout1);
setSize(new Dimension(399, 330));
setTitle("节点选择");
btnDelete.setText("删除");
btnDelete.addActionListener(new
TreeDelNodeFrame_btnDelete_actionAdapter(this));
btnExit.setText("退出");
btnExit.addActionListener(new TreeDelNodeFrame_btnExit_actionAdapter(this));
mnuDel.setText("删除");
mnuDel.addActionListener(new TreeDelNodeFrame_mnuDel_actionAdapter(this));
mnuExit.setText("退出");
mnuExit.addActionListener(new TreeDelNodeFrame_mnuExit_actionAdapter(this));
mnuEdit.setText("编辑");
mnuClock.setText("锁定");
mnuClock.addActionListener(new TreeDelNodeFrame_mnuClock_actionAdapter(this));
mnuUnclock.setText("解锁");
mnuUnclock.addActionListener(new
TreeDelNodeFrame_mnuUnclock_actionAdapter(this));
tree.addMouseListener(new TreeDelNodeFrame_tree_mouseAdapter(this));
tree.setEnabled(false);
contentPane.add(jScrollPane1, new XYConstraints(84, 21, 235, 231));
contentPane.add(btnDelete, new XYConstraints(107, 261, 78, 29));
contentPane.add(btnExit, new XYConstraints(213, 261, 79, 27));
jScrollPane1.getViewport().add(tree);
popumnu1.add(mnuEdit);
popumnu1.add(mnuDel);
popumnu1.add(mnuExit);
mnuEdit.add(mnuClock);
mnuEdit.add(mnuUnclock);
}
public void btnDelete_actionPerformed(ActionEvent e) {
DefaultMutableTreeNode node = new DefaultMutableTreeNode();
node= (DefaultMutableTreeNode)this.tree.getLastSelectedPathComponent();
System.out.println("node"+node);
if (node == null) {
JOptionPane.showMessageDialog(this, "请先选择节点再删除", "提示",
JOptionPane.ERROR_MESSAGE);
} else {
try {
node.removeFromParent();
this.tree.updateUI();
JOptionPane.showMessageDialog(this, "节点被删除成功", "已删除",
JOptionPane.INFORMATION_MESSAGE);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
public void btnExit_actionPerformed(ActionEvent e) {
System.exit(0);
}
public void mnuExit_actionPerformed(ActionEvent e) {
this.btnExit_actionPerformed(e);
}
public void mnuDel_actionPerformed(ActionEvent e) {
this.btnDelete_actionPerformed(e);
}
public void mnuClock_actionPerformed(ActionEvent e) {
this.tree.setEnabled(false);
this.btnDelete.setEnabled(false);
this.mnuDel.setEnabled(false);
}
public void mnuUnclock_actionPerformed(ActionEvent e) {
this.tree.setEnabled(true);
this.btnDelete.setEnabled(true);
this.mnuDel.setEnabled(true);
}
public void tree_mouseReleased(MouseEvent mouseEvent) {
if (mouseEvent.isPopupTrigger()) {
this.popumnu1.show(tree, mouseEvent.getX(), mouseEvent.getY());
}
}
}
class TreeDelNodeFrame_tree_mouseAdapter extends MouseAdapter {
private TreeDelNodeFrame adaptee;
TreeDelNodeFrame_tree_mouseAdapter(TreeDelNodeFrame adaptee) {
this.adaptee = adaptee;
}
public void mouseReleased(MouseEvent mouseEvent) {
adaptee.tree_mouseReleased(mouseEvent);
}
}
class TreeDelNodeFrame_mnuUnclock_actionAdapter implements ActionListener {
private TreeDelNodeFrame adaptee;
TreeDelNodeFrame_mnuUnclock_actionAdapter(TreeDelNodeFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.mnuUnclock_actionPerformed(e);
}
}
class TreeDelNodeFrame_mnuClock_actionAdapter implements ActionListener {
private TreeDelNodeFrame adaptee;
TreeDelNodeFrame_mnuClock_actionAdapter(TreeDelNodeFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.mnuClock_actionPerformed(e);
}
}
class TreeDelNodeFrame_mnuDel_actionAdapter implements ActionListener {
private TreeDelNodeFrame adaptee;
TreeDelNodeFrame_mnuDel_actionAdapter(TreeDelNodeFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.mnuDel_actionPerformed(e);
}
}
class TreeDelNodeFrame_mnuExit_actionAdapter implements ActionListener {
private TreeDelNodeFrame adaptee;
TreeDelNodeFrame_mnuExit_actionAdapter(TreeDelNodeFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.mnuExit_actionPerformed(e);
}
}
class TreeDelNodeFrame_btnExit_actionAdapter implements ActionListener {
private TreeDelNodeFrame adaptee;
TreeDelNodeFrame_btnExit_actionAdapter(TreeDelNodeFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnExit_actionPerformed(e);
}
}
class TreeDelNodeFrame_btnDelete_actionAdapter implements ActionListener {
private TreeDelNodeFrame adaptee;
TreeDelNodeFrame_btnDelete_actionAdapter(TreeDelNodeFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnDelete_actionPerformed(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -