void jMenuFileOpen_actionPerformed(ActionEvent e) { boolean bResult=true; String filename=null; File file=null; fc.setFileFilter(new ExampleFileFilter("cn","Concept Network files")); fc.setAcceptAllFileFilterUsed(false); int returnVal = fc.showOpenDialog(this); if (returnVal == JFileChooser.APPROVE_OPTION) { file=fc.getSelectedFile(); filename = file.getPath(); }else{ //the user push the Cancel button } //the following code is just for test ObjectInputStream in1=null; File f=new File(filename); try{ in1 = new ObjectInputStream(new FileInputStream(f)); jTree1=(JTree)in1.readObject(); }catch(IOException e1){ JOptionPane.showMessageDialog(null,"failed to read file!","Error",0); }catch(ClassNotFoundException e2){ JOptionPane.showMessageDialog(null,"cannot find the class file"+filename+"!","Error",0); } jTree1.setModel(treeModel); treeModel.addTreeModelListener(new MyTreeModelListener()); //Listen for when the selection changes. jTree1.addTreeSelectionListener(new TreeSelectionListener() { public void valueChanged(TreeSelectionEvent e) { jTree1_valueChanged(e); } }); MouseListener popupListener = new PopupListener(); jTree1.addMouseListener(popupListener);//han scrollPane=new JScrollPane(jTree1); jSplitPane1.setLeftComponent(scrollPane); jSplitPane1.setDividerLocation(200); jSplitPane1.validate(); } 初始化的时候也有一段代码: //Create the nodes. root=new DefaultMutableTreeNode(new Concept("root","ROOT")); treeModel=new DefaultTreeModel(root); treeModel.addTreeModelListener(new MyTreeModelListener()); jTree1= new JTree(root); createNodes(root); jTree1.setAutoscrolls(true); jTree1.setBorder(BorderFactory.createEtchedBorder()); jTree1.setEditable(false); jTree1.setModel(treeModel); jTree1.setRootVisible(false); jTree1.setShowsRootHandles(true); scrollPane = new JScrollPane(jTree1); //Create a tree that allows one selection at a time. jTree1.getSelectionModel().setSelectionMode (TreeSelectionModel.SINGLE_TREE_SELECTION); //Listen for when the selection changes. jTree1.addTreeSelectionListener(new TreeSelectionListener() { public void valueChanged(TreeSelectionEvent e) { jTree1_valueChanged(e); } }); //Add listener to components that can bring up popup menus. MouseListener popupListener = new PopupListener(); jTree1.addMouseListener(popupListener);//han
boolean bResult=true;
String filename=null;
File file=null; fc.setFileFilter(new ExampleFileFilter("cn","Concept Network files"));
fc.setAcceptAllFileFilterUsed(false);
int returnVal = fc.showOpenDialog(this);
if (returnVal == JFileChooser.APPROVE_OPTION) {
file=fc.getSelectedFile();
filename = file.getPath();
}else{
//the user push the Cancel button
}
//the following code is just for test
ObjectInputStream in1=null; File f=new File(filename);
try{
in1 = new ObjectInputStream(new FileInputStream(f));
jTree1=(JTree)in1.readObject();
}catch(IOException e1){
JOptionPane.showMessageDialog(null,"failed to read file!","Error",0);
}catch(ClassNotFoundException e2){
JOptionPane.showMessageDialog(null,"cannot find the class file"+filename+"!","Error",0);
}
jTree1.setModel(treeModel);
treeModel.addTreeModelListener(new MyTreeModelListener());
//Listen for when the selection changes.
jTree1.addTreeSelectionListener(new TreeSelectionListener() {
public void valueChanged(TreeSelectionEvent e) {
jTree1_valueChanged(e);
}
});
MouseListener popupListener = new PopupListener();
jTree1.addMouseListener(popupListener);//han scrollPane=new JScrollPane(jTree1);
jSplitPane1.setLeftComponent(scrollPane);
jSplitPane1.setDividerLocation(200);
jSplitPane1.validate();
}
初始化的时候也有一段代码:
//Create the nodes.
root=new DefaultMutableTreeNode(new Concept("root","ROOT"));
treeModel=new DefaultTreeModel(root);
treeModel.addTreeModelListener(new MyTreeModelListener());
jTree1= new JTree(root);
createNodes(root);
jTree1.setAutoscrolls(true);
jTree1.setBorder(BorderFactory.createEtchedBorder());
jTree1.setEditable(false);
jTree1.setModel(treeModel);
jTree1.setRootVisible(false);
jTree1.setShowsRootHandles(true);
scrollPane = new JScrollPane(jTree1);
//Create a tree that allows one selection at a time.
jTree1.getSelectionModel().setSelectionMode
(TreeSelectionModel.SINGLE_TREE_SELECTION);
//Listen for when the selection changes.
jTree1.addTreeSelectionListener(new TreeSelectionListener() {
public void valueChanged(TreeSelectionEvent e) {
jTree1_valueChanged(e);
}
});
//Add listener to components that can bring up popup menus.
MouseListener popupListener = new PopupListener();
jTree1.addMouseListener(popupListener);//han