📄 insert.java
字号:
package viewtuba1;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.TreePath;
import model.MyTree;
public class Insert {
WindowFrame wf;
MyTree mt;
JTextField jtf;
public Insert() {
final JFrame frame = new JFrame();
Container c = frame.getContentPane();
c.setLayout(new BorderLayout());
JPanel jp1 = new JPanel();
jp1.setLayout(new FlowLayout());
JLabel jl1 = new JLabel("Please input TreeNode name");
jp1.add(jl1);
JPanel jp2 = new JPanel();
jp2.setLayout(new FlowLayout());
jtf = new JTextField(6);
jp2.add(jtf);
JPanel jp3 = new JPanel();
ImageIcon icon = new ImageIcon("image/b1.gif");
JLabel jl2 = new JLabel(icon, JLabel.RIGHT);
jp3.add(jl2);
JPanel jp4 = new JPanel();
jp4.setLayout(new FlowLayout());
JButton jb1 = new JButton("Insert");
jb1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
DefaultMutableTreeNode parentNode = null;
DefaultMutableTreeNode newNode = new DefaultMutableTreeNode(
jtf.getText());
newNode.setAllowsChildren(true);
TreePath parentPath = wf.getTree().getSelectionPath();
// 判断是否选择节点
if (parentPath != null) {
// 取得新节点的父节点
parentNode = (DefaultMutableTreeNode) (parentPath
.getLastPathComponent());
System.out.println(parentNode.toString());
// 由DefaultTreeModel的insertNodeInto()方法增加新节点
wf.getTreeModel().insertNodeInto(newNode, parentNode, parentNode
.getChildCount());
wf.getTree().scrollPathToVisible(new TreePath(newNode.getPath()));
// tree的scrollPathToVisible()方法在使Tree会自动展开文件夹以便显示所加入的新节点。若没加这行则加入的新节点
// 会被 包在文件夹中,你必须自行展开文件夹才看得到。
// jTree1.scrollPathToVisible(new TreePath(newNode.getPath()));
} else {
JOptionPane.showMessageDialog(null, "请选择一个树接点!", "提示",
JOptionPane.CANCEL_OPTION);
}
}
});
JButton jb2 = new JButton("Cancel");
jb2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
frame.dispose();
}
});
jp4.add(jb1);
jp4.add(jb2);
c.add(jp4, BorderLayout.SOUTH);
c.add(jp3, BorderLayout.WEST);
c.add(jp2, BorderLayout.CENTER);
c.add(jp1, BorderLayout.NORTH);
frame.setTitle("insert property");
frame.setSize(300, 200);
frame.setVisible(true);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String args[]) {
new Insert();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -