自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

介紹JTree Swing組件

開發(fā) 后端
本文介紹JTree Swing組件,以及介紹如何使用JTree Swing組件和創(chuàng)建一個屬于你自己的XML編輯器。

我想您一定對XML有所了解,說不定您現在還躍躍欲試想寫一段XML文本呢,可是現在能找到的跨平臺的、免費的XML編輯器太少了。所以在本文中,我想介紹一下或者說帶您一步一步的開發(fā)一個簡單的XML編輯器,當然我們要用到一些最常見的JTree Swing組件,不過這些都是免費的,有些是JDK中的,有些是可以從網上下載的。我想通過本文,你就可以創(chuàng)建一個屬于你自己的XML編輯器。

先讓我介紹一下本文輯寫的思路。首先我想簡要的討論一下XML和為什么樹型結構比較適合用來顯示XML,然后我們來看一看JAXP API如何建立所需要的XML類的環(huán)境;然后我們將了解用來顯示一個圖形樹的JTree Swing組件;最后,我們將創(chuàng)建一個繼承JTree組件的可以重復使用的類,可以用來分析一個XML文檔,并把數據顯示在一個Jtree中。

說到XML(eXtensible Markup Languge),人們往往把它當成是一種新的用于Web瀏覽器中的標記語言,就象HTML或CSS一樣。其實,XML是一種數據表示語言,它允許你使用一種非常有效的方法來描述你的數據。XML能夠使你定義諸如“these three words constitutes a heading”這樣的語句。XML允許你聲明任何類型的數據,而不是用來把這些數據顯示在網頁中。

請看一看下面的XML實例:

  1. <article>  
  2. <header>  
  3. <title>   
  4. <subtitle> </subtitle>  
  5. </title>  
  6. <author> Wayne </author>  
  7. <header>  
  8. <content> </content>  
  9. </article> 

請注意,這些元素和標準的HTML語句是不同的,但是它們看上去比較象HTML,這是因為XML和HTML都是來源于SGML語言。不同的是HTML有預定義的標簽集,而XML的語法則有許多靈活性,它允許你使用表意的標記如< author>來括在數據兩邊。你還要注意,所有的元素都從屬于根元素(上例中為< article>),有些元素則還有自己的子元素,如< subtitle>就是< title>的子元素。這樣的數據組織方式有三個好處:數據能夠更加表意,數據更加易維護而且數據更加容易作為一個樹的結構表現出來,這就是我們?yōu)槭裁词褂肑Tree對象來顯示XML數據的原因。如果你想對XML有更深的了解,請參閱天極網上的相關教程。

JAXP是一個用于處理XML的Java API,它能夠使應用程序分析并且轉化XML文檔,它的功能有點象JDBC API,都是把函數功能抽象成一個個方法。你可以去Apache網站找到最新的Xerces分析器,其中含有最新的JAXP,下載下來以后把它放在你的類目錄中。

下面讓我們看一下如何使用JTree Swing組件。

我們都知道,在自然界中,一棵樹通常都有一個非常粗的樹干,樹干上有許多樹枝分叉。每個樹杈和樹杈之間都有一定的聯系,因為它們都有同一個來源:樹干。這種繼承的關系并不只在樹枝中有,人類譜系也遵循相同的規(guī)律。從父母,到子女再到子女的子女,就這樣直到數不清為止。同樣,在數據存儲中,樹的概念也是一種使用同人類家譜樹一樣方法儲存數據的方法。樹的每一個樹杈稱為一個節(jié)點,每個有子節(jié)點的節(jié)點稱為父節(jié)點,所有的子節(jié)點的公共的父節(jié)點被稱為根節(jié)點。一個JTree組件就是一個簡單的樹數據結構的可視化表現形式。

幾乎所有的XML編輯器都包括一個可視化的樹結構,能讓你編輯XML文檔中的元素。我們馬上就會構建一個編輯器,不過在此之前,先讓我們再了解一下JTree組件。一個節(jié)點在一棵樹的某個位置儲存數據,為了存儲數據,必須知道任何一個父節(jié)點和它們的子節(jié)點。javax.swing.tree包定義了一些非常有用的接口,提供了一種通用的方法構建和操作一個樹結構。

【編輯推薦】

  1. 淺析運行Swing應用程序
  2. 了解AWT和Swing組件
  3. Swing組件相關的操作
  4. 詳解MVC設計模式與Swing
  5. 淺談Swing和AWT構件
責任編輯:佚名 來源: 中國IT實驗室
相關推薦

2009-07-15 10:52:13

JTree組件

2012-01-17 14:05:29

JavaSwing

2009-07-17 11:13:46

AWT和SwingSwing組件

2009-07-17 14:38:51

輕量級Swing組件

2009-07-10 15:41:27

Swing AWT

2009-07-15 10:37:28

Swing外觀

2009-07-10 13:36:32

Swing容器

2009-07-15 10:23:51

Swing SWT集成

2009-07-15 18:06:38

Swing線程

2009-07-10 14:41:57

Swing技術

2009-07-15 13:06:38

Swing組件

2009-07-15 13:48:26

Swing模型和渲染器

2009-07-17 12:54:13

2009-07-17 15:30:30

JFaceAWT和SWTSwing

2009-07-14 17:21:42

Swing組件

2009-07-15 11:02:32

Swing組件

2009-07-10 12:30:12

Swing組件

2009-07-10 16:29:32

Swing組件

2009-07-10 17:03:17

AWT組件Swing組件

2009-07-14 18:05:28

輕量級Swing組件
點贊
收藏

51CTO技術棧公眾號