⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xmleditor.java

📁 动画素材图像语义标注系统:该系统实现对图片的语义标注
💻 JAVA
字号:
package cn.dxm.util;

import java.awt.GridLayout;
import java.beans.ExceptionListener;
import java.beans.XMLDecoder;
import java.beans.XMLEncoder;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;

import javax.swing.JPanel;
import javax.swing.JTree;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.TreeSelectionModel;




public class XMLEditor implements ExceptionListener{
	
	
	
	public void saveJTreeToXml(String xmlfname,DefaultMutableTreeNode rootnode){
		try {
			//XML编码器
			XMLEncoder xe = new XMLEncoder(new BufferedOutputStream(
					new FileOutputStream(xmlfname)));
			xe.setExceptionListener(this);
			xe.writeObject(rootnode);
			xe.flush();
			xe.close();
		} catch (Exception ex) {
			ex.printStackTrace();
		}
	}
	
	
	
	public void loadXmlToJTree(JTree tree,DefaultTreeModel treeModel,JPanel treepanel,String xmlfname,DefaultMutableTreeNode rootnode){
		try {
			
			
			
			//rootnode.removeAllChildren();
			//treeModel.reload();
			
			//XML解码器.
			XMLDecoder xe = new XMLDecoder(new FileInputStream(xmlfname));
			//DynamicTreeDemo.this)指DynamicTreeDemo本身对像.
			xe.setExceptionListener(this);
			rootnode = (DefaultMutableTreeNode) xe.readObject();
			xe.close();
			this.reload(treeModel,rootnode,tree,treepanel);
		} catch (Exception ex) {
			ex.printStackTrace();
		}
	}
	
	
	public void reload(DefaultTreeModel treeModel,DefaultMutableTreeNode rootNode,JTree tree,JPanel panel){
		treeModel = new DefaultTreeModel(rootNode);
		treeModel.addTreeModelListener(new MyTreeModelListener());

		 tree = new JTree(treeModel);
		tree.setEditable(true);
		tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
		tree.setShowsRootHandles(true);
		panel.removeAll();
		panel.invalidate();
		panel.repaint();
		panel.validate();
	}


	public void exceptionThrown(Exception e) {
		e.printStackTrace();
		
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -