前言 最近,Eclipse開源項目終于推出了期待已久的Visual Editor Project(VEP)。VE項目使得功能強大的eclipse平臺在java開發方面又增加了一個可視化java組件開發利器。它讓java開發者再也不用依賴其它的IDE產品來做GUI界面方面的工作。所有的開發,從應用程序界面到業務邏輯的開發,現在都可以在eclipse平臺上完成。本文將引導開發者如何安裝配置并使用Visual Editor。
關于Visual Editor
開始介紹之前,來看一個筆者用Visual Editor(以下簡稱VE)設計的一個java程序界面:

怎么樣,其可視化的界面設計,一點也不遜于其它的Java可視化界面開發工具。
Visual Editor是一個開源的eclipse編輯器。它同JDT、PDE等其它eclipse的工具項目一樣,是一個全新的eclipse工具項目。它可以進行可視化的編輯java GUI程序,也能編輯可視化的Java Bean組件。它能與eclipse的Java Editor集成在一起,當在Visual Editor中編輯圖形界面時,會立即反饋到java Editor中的代碼。反之亦然。
VE是一個可視化開發的一個framework,當前版本的VE是0.5.0RC1版,本版本的VE支持Swing和AWT的可視Java組件開發。由于這個framework設計的具有通用性,它也可以很容易的實現C++或其它語言下可視化開發。其將來的版本(從1.0開始),將會支持SWT的開發。更多的關于Visual Editor的信息,請看參考資料的相關鏈接。
下載與安裝 由于Visual Editor是用純java編寫的,所以它應該可以在任何操作系統上運行。但當前的VE版本是0.5.0RC1,只在windows和linux平臺上經過測試。所以如果你使用的是這兩種操作系統之外的其它操作系統,你應該先閱讀VE的readme文件,安裝和使用VE前,必須先安裝以下版本的eclipse和相關支持類庫:
Eclipse build 2.1.2 (build page) (download zip)
EMF build 1.1.1: (build page) (download zip)
GEF Build 2.1.2: (build page) (download zip)
為了方便中國的開發者,eclipse也提供了一個中文語言包,下載安裝后,elcipse環境將變成全中文的界面。在本文中,筆者用的eclipse也安裝了此中文語言包。之后就可以從以下地址下載Visual Editor了:
http://download.eclips.org/vep….
下載后的VE是一個zip檔案,請將其壓縮包中plugins和features目錄下的內容解壓到eclipse安裝目錄的相應目錄中即可。如果你的eclipse是運行著的,請關閉并重新啟動eclipse。
開始一個設計任務 現在,所有程序安裝完成,筆者將用一個例子,來講解Visual Editor的使用。在這個例子中,筆者要設計一個郵件發送面板,下面是它的草圖:

此面板包括發送人,接收人,郵件主題,郵件內容以及發送和清除按鈕,
進入Visual Editor 啟動eclipse平臺。剛開始,你可能覺得eclipse并沒有什么變化。先別急,請新建一個項目,點擊"文件"菜單下的"新建"子菜單,選擇并建立一個新的"java項目"。然后在工具欄上的"新建Java類" 圖標上,點擊右邊的小箭頭

,將展開如下圖的菜單:

在此菜單上,多了一個"Visual Calss"的子菜單,這就是進入Visual Editor的入口之一。點擊"Visual Class",彈出如下的對話框:

在此對話框中,要求輸入類的名稱(如標記○1)位置),在這里我們輸入"MessagePanel",以及你想要繼承的可視類(如標記○2位置)。你可以選擇繼承來自swing或AWT的任何界面組件,如要繼承其它類型的類,請選擇"other"并點擊"瀏覽"按鈕來選擇你要繼承的類。在此處,我們選擇"panel"和Swing選項,繼承JPanel,然后點擊"完成"按鈕,大家就可以見到Visual Editor的界面了:

由于eclipse工作臺高度的可定制性,讀者現在看到的界面并非VE初始的布局,而是經過筆者按喜好的方式重新布局過的透視圖,但是這并不會影響讀者理解本文內容。
如圖中1所示,是VE的工具面板,提供"選取"、"框選"等選擇工具。還有Swing組件,Swing容器,Swing菜單以及AWT控件設計工具。在面板下方有"Design"和"Source"兩個頁簽,用來切換設計界面和Java源代碼視圖。
圖中2是VE的工具欄,包括工具面板中的一些常用按鈕。
圖中3是"Java Beans"視圖和"屬性"視圖,兩個視圖可以切換顯示。"Java Beans"視圖用樹形結構即時顯示設計中用到的各種Java Bean組件層次。而"屬性"視圖顯示顯示當前所選中的Java bean組件的屬性值列表,你可以在此列表中編輯各項Java Bean的屬性值。
圖中灰色矩形區域即是我們最開始選擇的JPanel,所有的工作就從它開始。
擺設Swing組件 做過Swing GUI界面設計的人都知道,Java應用程序界面上的元素位置是用LayoutManager來管理的。JPanel的預設布局管理器是FlowLayout。VE目前支持所有的傳統的布局管理器(這里所指的傳統布局管理器是指JDK1.4之前的布局管理器。可惜的是VE目前還不支持從JDK1.4開始有的SpringLayout)。
要設置JPanel的layout,請先在設計界面中選中JPanel,再切換到"屬性"視圖,找到"layout"屬性,如下圖所示:

圖中顯示了JPanel的預設LayoutManager。在"layout"屬性的右邊,可以通過點擊組合框來指定不同類型的LayoutManager。不同的LayoutManager會在屬性編輯器中顯示不同的參數,如果選擇GridLayout,屬性編輯器中的layout屬性將顯示另外幾種不同的參數,如下圖如示: