站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Java 专题使用Java Swing创建一个XML编辑器之二

使用Java Swing创建一个XML编辑器之二

摘要: 在本文中,我们将创建我们的XML编辑器的框架,为了达到这个目的,我们将用到许多Swing组件(包括JsplitPane、JscrollPane、Jbutton和JtextArea组件)……

  这是本系列的第二篇文章。在上一篇文章中,我们简要地讨论了XML以及为什么一个树形结构适合显示XML、如何处理XML数据、如何使用JTree Swing 组件以及如何创建一个可重用的能够分析XML文档以及在Jtree显示数据的组件。

  在本文中,我们将创建我们的XML编辑器的框架,为了达到这个目的,我们将用到许多Swing组件(包括JsplitPane、JscrollPane、Jbutton和JtextArea组件)。

  一、问题的提出与解决

  我如何创建一个能够浏览文本和浏览视图的XML文本编辑器呢?创建一个包含Jbutton和JsplitPane的Jframe对象, 然后让JsplitPane对象包含两个JscrollPane对象,一个用于浏览图形(xTree类),另一个用于浏览文本(JtextArea类)。Jbutton用来管理刷新图形浏览的操作。

  二、增强Xtree类的功能

  在上一篇文章中,我们开发了Xtree类,这是一个可重用的组件,继承于Jtree类并能够把XML数据以图形树的形式显示。我们现在就增强这个类, 通过提供给它一个在显示默认的XML树来We will now enhance that class by providing it with a default XML tree to display in the event that an XML file is not supplied at the command-line. 而且,我们还将添加一些错误处理逻辑以便程序不会因为无效的XML而崩溃。

  第一步是创建一个名为buildTree()的方法:

<table align=center bgColor=#ebe9eb border=0 width=500> <tr> <td>private DefaultTreeModel buildTree( String text )

{

 DefaultMutableTreeNode treeNode;

 Node newNode;

 // 采用DOM根节点并把它转化成为一个Tree模型

 newNode = parseXml( text );

 if ( newNode != null )

 {

  treeNode = createTreeNode( newNode );

  return new DefaultTreeModel( treeNode );

 }

 else

  return null;

 } file://结束buildTree() </td></tr></table>

  这个方法取得传入的 XML字符串,分析这个 XML字符串并构造一个可以用来从数据中构造图形树形结构的DefaultTreeModel变量实例。这个功能原来包含在 XTree()构造程序中,但是我们把它拿出来然后把它放进一个单独的方法中,这样我们就有了创建一个默认图形树的伸缩性。这就是我们接下来想做的事。



↑返回目录
前一篇: 使用Java Swing创建一个XML编辑器之三
后一篇: 深入探讨EJB中新的消息驱动组件