操纵Java Swing成立一个XML编辑器之二[Java编程]
本文“操纵Java Swing成立一个XML编辑器之二[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
这是本系列的第二篇文章.在上一篇文章中,我们扼要地谈论了XML以及为什么一个树形构造合适显示XML、若何处理XML数据、若何利用JTree Swing 组件以及若何成立一个可重用的可以解析XML文档以及在Jtree显示数据的组件.
在本文中,我们将成立我们的XML编辑器的框架,为了到达这个目的,我们将用到很多Swing组件(包含JsplitPane、JscrollPane、Jbutton和JtextArea组件).
1、问题的提出与办理
我若何成立一个可以浏览文本和浏览视图的XML文本编辑器呢?成立一个包含Jbutton和JsplitPane的Jframe对象, 然后让JsplitPane对象包含两个JscrollPane对象,一个用于浏览图形(xTree类),另一个用于浏览文本(JtextArea类).Jbutton用来管理革新图形浏览的操作.
2、加强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()的办法:
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()
这个办法获得传入的 XML字符串,解析这个 XML字符串并构造一个可以用来从数据中构造图形树形构造的DefaultTreeModel变量实例.这个功效本来包含在 XTree()构造程序中,但是我们把它拿出来然后把它放进一个单独的办法中,这样我们就有了成立一个默许图形树的伸缩性.这就是我们接下来想做的事.
接下来一步是成立一个叫 buildWelcomeTree()的办法.这个办法一次构建一个DefaultTreeModel变量,而不是通过解析一个现有的XML文字字符串.假如用户没有指定 XML文件就启动这个利用程序,将显示 DefaultTreeModel.见代码段1
代码段1:
private DefaultTreeModel buildWelcomeTree()
{
DefaultMutableTreeNode root;
DefaultMutableTreeNode instructions, openingDoc,
editingDoc, savingDoc;
DefaultMutableTreeNode openingDocText, editingDocText,
savingDocText;
DefaultMutableTreeNode development, addingFeatures,
contactingKyle;
root = new DefaultMutableTreeNode( "Welcome to XML View 1.0" );
instructions = new DefaultMutableTreeNode( "Instructions" );
openingDoc = new DefaultMutableTreeNode
( "Opening XML Documents" );
openingDocText = new DefaultMutableTreeNode
( "When invoking the XmlEditor from
the command-line, you must specify the filename." );
editingDoc = new DefaultMutableTreeNode
( "Editing an XML Document" );
editingDocText = new DefaultMutableTreeNode
( "XML text in the right hand frame
can be edited directly.
The "refresh" button will rebuild
the JTree in the left frame." );
savingDoc = new DefaultMutableTreeNode
( "Saving an XML Document" );
savingDocText = new DefaultMutableTreeNode
( "This iteration of the XmlEditor does
not provide the ability to save your
document. That will come with the
next article." );
root.add( instructions );
instructions.add( openingDoc );
instructions.add( editingDoc );
openingDoc.add( openingDocText );
editingDoc.add( editingDocText );
return new DefaultTreeModel( root );
}
以上是“操纵Java Swing成立一个XML编辑器之二[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |