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

透視Synth與Swing的外觀

開發(fā) 后端
本文介紹Synth外觀于Swing外觀,閱讀本文之后,您應該可以在短時間內創(chuàng)建具有專業(yè)外觀的 UI。

本文將深入透視 Synth外觀,它是 Java 5.0 中為 Swing 引入的***內容。通過為 Java UI 編程引入“皮膚”的概念,Synth 使開發(fā)人員可以為應用程序創(chuàng)建和部署定制的外觀。軟件工程師 Michael Abernethy 將帶您從頭開始逐步構建一個具有 Synth外觀的應用程序,讓您充分了解 Synth 的概念。閱讀本文之后,您應該可以在短時間內創(chuàng)建具有專業(yè)外觀的 UI。

就在 Sun 一如既往地試圖“再次引入 Java Desktop”之際,Java UI 開發(fā)人員的抱怨之詞亦已表面化:要創(chuàng)建完全定制的外觀實在太難。這樣做不僅要花費太多的時間,并且 Swing UI 代碼的編寫和文檔的編制也極為不堪,常常是亂雜一氣,缺乏規(guī)劃。為了創(chuàng)建完整的外觀,開發(fā)人員需要繼承 Metal 外觀的 39 個類,或者繼承 Basic 外觀的 60 個類。誰想通過重寫整個包來改變應用程序呈現(xiàn)外觀的方式呢?用 Swing 創(chuàng)建定制外觀有多難,通過下面的事實同樣可窺見一斑:在很多開發(fā)人員為開源項目添磚加瓦的時代,Internet 上可用的自定義 Swing外觀幾乎是鳳毛麟角 —— 總共大約是 20 個,其中少數(shù)在 SourceForge.net 上(請參閱參考資料)。

美麗只是膚淺的東西,進入 Synth,Sun 希望它能使應用程序外觀的個性化過程變得容易。Synth 的目標很簡單 —— 讓開發(fā)人員不必編寫任何代碼就可以創(chuàng)建新的外觀。這似乎是個不錯的解決方案。程序員一般沒有突出的藝術才華,而圖形設計人員通常也不是 Java 編程專家。Synth 把對外觀的所有描述從代碼中分離出來,而將其放入外部的 XML 文件和圖像文件中,為上述問題提供了大快人心的解決之道。這種完全在外部文件中描述的外觀被稱作皮膚(skin)。

Sun 的皮膚概念并不是什么創(chuàng)新。例如,Winamp 有數(shù)百種皮膚,F(xiàn)irefox 也有幾十種皮膚,這些皮膚很容易創(chuàng)建,只需更改一個 XML 文件即可。想像一下,僅僅修改一個 XML 文件,就能快速、容易地為 Java 應用程序創(chuàng)建一個外觀。再想想這樣一來的結果 —— 幾百個互不相同的 Swing外觀。Java UI 開發(fā)人員當然有理由歡呼了。

本文將深入分析 Synth外觀,向您展示創(chuàng)建一個完整的外觀或皮膚所需知道的一切。您會看到一個帶有示例皮膚的應用程序,這個應用程序使用了 Synth 所有重要的概念。然后,我會逐步剖析這個皮膚,在構建 XML 文件的過程中,一一教會您 Synth 的各個概念。

本文***一節(jié)將盡力回答開發(fā)人員關于 Synth 性能、bug 和缺陷以及 Synth 在省時方面的表現(xiàn)等種種問題。閱讀本文之后,您應該會愿意擁護 Synth 作為外觀解決方案,并準備馬上使用它來創(chuàng)建自己的 Swing外觀。

【編輯推薦】

  1. 介紹Swing技術的應用
  2. 實現(xiàn)Swing ActionListener接口
  3. 淺析Accelerator key in Java Swing
  4. Swing控件的工作方式
  5. 全面介紹Swing容器
責任編輯:佚名 來源: 中國IT實驗室
相關推薦

2009-07-15 10:37:28

Swing外觀

2009-07-10 12:30:12

Swing組件

2012-05-31 14:11:49

SwingSubstance異常

2012-01-17 17:08:05

JavaSwing

2012-01-11 09:39:50

Java

2009-07-14 14:03:56

Swing程序

2022-02-23 23:33:14

CSS

2009-07-14 15:34:22

Swing中的線程GUI程序

2009-07-17 14:57:41

SwingWorkerSwing程序

2009-07-14 16:30:41

Swing與SWT

2011-05-07 15:09:41

索尼筆記本

2009-07-15 15:35:59

Swing程序Swing性能

2009-07-16 11:19:48

外部線程Swing組件

2009-07-10 13:09:53

.Net與Java S

2009-07-10 16:14:29

MVC設計模式Swing

2009-07-14 14:00:47

iData技術

2013-05-10 16:42:26

2011-04-15 17:33:39

SWINGAWT

2009-07-14 11:08:42

WebRendererSwing應用程序

2011-07-08 13:40:18

點贊
收藏

51CTO技術棧公眾號