首頁
中文書目錄
原文書目錄
 站內快速搜尋
資源中心
Book Series
Special Interest













■好消息,歐萊禮書籍已重新鋪貨至各大書局及網路書店,歡迎讀者選購       ■歡迎各院校採用歐萊禮書籍,學校團購請洽校園服務團隊

Learning Java the O'Reilly's Way

Java Swing, 2nd Ed.


現代的程式中,圖形化的使用者介面(GUI)相當重要,良好的GUI可以讓程式更具吸引力、更好操作、更容易學習。雖然 Java 早就有 AWT,可以用來設計 GUI,但是 AWT 有兩大缺失:
  • 太陽春:AWT 只提供最基本的元件(比方說:按鈕、捲軸等),而不提供 TreeView 等現代化GUI元件。更糟的是,AWT 的元件還只提供最基本的功能,比方說:按鈕上面只能出現 文字,不能出現圖形。(當然,你也可以利用繼承的方式來設計出圖文兼容的按鈕,但這還要花不少額外的時間。)
  • 不能跨平台:AWT透過「同儕系統(peer system)」來和作業系統溝通。每個使用者介面的物件都有一個對應的「同儕物件(peer object)」,用來管理作業系統所提供的真正 使用者介面物件。比方說:如果你建立一個按鈕(Button)物件,就會有一個按鈕同儕(ButtonPeer)物件一請被建立,此按鈕同儕物件會請底層的作業系統建立一個真正的按鈕。 如果此程式是在 Windows 98 上執行,所建立的按鈕自然是 Windows 98 的按鈕。AWT 元件的外觀就會受到底層作業系統的影響。
正因為 AWT 的這兩大缺點,所以許多軟體元件廠商紛紛推出它們的GUI元件庫。比方說, Borland的JBCL,KL Group 的 JClass。使用這些協力廠商的 GUI 元件產品固然解決 了 AWT 的兩大問題,但是因為非標準 API,所以必須隨著軟體的發行而附上,不但元件使用授權需要額外的花費,使得軟體成本上升,而且軟體體積也因此變大許多。

如果能有一套免費、統一、完善、又可跨平台的 GUI 元件庫的話,那該有多好!

Swing 正是這樣的產品,它是由 Sun 公司研發設計。有了 Swing,上述的問題都迎刃而解。另外,由IBM所主導的SWT在最近也異軍突起,值得我們持續關注。

Swing 不但填補了 Java GUI 不能跨平台的缺點,也提供許多新的元件,可以用來組合出 複雜的使用者介面,除此之外,Swing 也為 Java 注入新的特色,支援包括了拖放功能(drag-and-drop)、復原(undo)、並允許使用者改變 GUI 的外觀(look and feel)。Swing 元件都是「輕量級的(lightweight)」(註:前述的 Borland 的 JBCL,KL Group 的JClass 也都是輕量級元件)。

Swing 提供了這麼多特色,所以我們該學的東西也不少,Swing 比 AWT 複雜許多,想直接透過 Java Swing API 的文件來學習如何將 Swing 完全駕馭得宜實在不太可能 (比方說:JTable、JTextPane、和 Look-and-Feel 這麼複雜的東西,我不相信有人光靠 Swing Javadoc 簡單的說明就能操控自如)。我們需要一本好的 Swing 書籍,除了教學功能, 也要能當 API 速查手冊。

由 Robert Eckstein、Marc Loy、和 Dave Wood 合著的《Java Swing》深入地涵蓋了 Swing 的一切,也正因為如此,它的厚度高達一千多頁,最新版是第二版,內容更新到JDK 1.4。本書以 Swing 大架構的解說為開始, 接著分門別類、由淺而深地介紹 Swing 的每個類別。O'Reilly 的書向來附圖不多,但本書可以算是個異數,不但有許多類別繼承圖,更有不少示意圖和GUI的畫面。本書還有許多表格、 詳細地列出類別的 method 和 field。由於 Swing 元件一般都是搭配 RAD 工具(例如 JBuilder)來當作 bean 使用,所以這些表格還貼心地標出 get、set、is、 這些和 bean access 相關的 method。本書也有不少範例,讓讀者可以馬上知道相關用法。除了利用本書來學習 swing 之外,本書也相當適合當作案頭查閱書,我把它放在電腦桌旁 隨手可及的地方。

就像 Windows 有一些未公開的 API,Swing 也一樣,本書闢一個章節告訴你這些好用的 API(比方說 timer)。另外,如果你對 Swing 內部運作原理感興趣,本書也有一章完整的 說明。這些內容在其它書並不容易看到。

除了介紹一般的 Swing 之外,本書也涵蓋了Look and Feel、Accessibility、Undo、Drag-and-Drop。本書關於 Look and Feel 的部分寫得尤其精彩。

你還是覺得無法隨心所欲地控制 Swing 的某些元件嗎?你需要看看這本書,你會發現,其實 Swing 沒什麼好怕的。

本文作者:蔡學鏞
張貼日期:12/11/2002

| 首頁 | 聯絡我們 |
© 2009, O'Reilly Media, Inc. Taiwan Branch