Read Sean

          Read me, read Sean.
          posts - 508, comments - 655, trackbacks - 9, articles - 4

          經(jīng)常看見網(wǎng)上許多人對SWT的認(rèn)識無非就是說它運(yùn)行速度快,其實(shí)這是個誤區(qū)。在SWT誕生之初,也許運(yùn)行速度是它的一項主要目標(biāo),但是它真正的優(yōu)勢其實(shí)并非這么簡單,讓它真正發(fā)光的是它對宿主操作系統(tǒng)的忠誠度,一方面,對用戶來說,他們操作的界面表現(xiàn)形式,包括外觀、快捷鍵等等可以和他們常用的軟件高度一致;另一方面,由于它直接封裝操作系統(tǒng)API的這個特性,任何你發(fā)現(xiàn)的界面上的問題或者說某個控件特殊的處理方式,你都可以在操作系統(tǒng)這一層的文檔中找答案,而不是在SWT中間找。這跟Swing很不一樣,Swing追求界面在所有平臺的一致性,而不是對當(dāng)前平臺的其他本地應(yīng)用的一致性。給我的感覺,Swing這樣的做法實(shí)際上是瞄著一個移動的靶子,永遠(yuǎn)在趕路,因?yàn)樗偸切枰煌5母僮飨到y(tǒng)的變化和創(chuàng)新而變化與模仿。在這一點(diǎn)上,SWT的做法的確要高明得多。

          順便來看一個WOW魔獸世界的XP界面風(fēng)格下的Eclipse的截屏:
          WOW_Style_Eclipse_Snapshot.jpg

          這個界面風(fēng)格可以隨時跟你自己默認(rèn)的XP風(fēng)格對換,這樣的效果和方便的更替如果要Swing來實(shí)現(xiàn)豈不是有點(diǎn)勉為其難?我不是說SWT是萬能的,只是想讓大家知道,Swing有它好的地方,SWT同樣也有。

          Feedback

          # re: [Eclipse筆記]SWT真正的優(yōu)勢不是快這么簡單  回復(fù)  更多評論   

          2005-08-15 01:48 by swing
          swing 也可以和當(dāng)前操作系統(tǒng)風(fēng)格一致啊

          # re: [Eclipse筆記]SWT真正的優(yōu)勢不是快這么簡單  回復(fù)  更多評論   

          2005-08-15 12:59 by 大胃
          Swing可以做到完全模仿某一個風(fēng)格,但那始終是模仿出來的。而且我很懷疑一個Swing做的GUI可以在Windows桌面主題變化以后自動跟著變化,除非你刻意實(shí)現(xiàn)了所有可能用到的主題,并編碼去偵測OS的主題變化。當(dāng)然外觀都還是其次,重要的是GUI控件的默認(rèn)行為,如就是應(yīng)用在各個GUI控件上的眾多快捷鍵,Windows默認(rèn)是這樣,其他操作系統(tǒng)未必。如果Swing真做成Windows的翻版,那就注定會被MS牽著鼻子走了,而且將很難做到平臺中立。所以說,Swing不應(yīng)該、也沒有必要實(shí)現(xiàn)Windows下面各種花哨的主題風(fēng)格。

          這是我的看法,希望你能證明我錯了。

          # re: [Eclipse筆記]SWT真正的優(yōu)勢不是快這么簡單  回復(fù)  更多評論   

          2006-05-07 22:46 by xxx
          你的確錯了,Swing是在運(yùn)行的時候跟隨OS主題變化而變化的。
          另外,Swing在1.6采用操作系統(tǒng)的內(nèi)置的gui重畫方法,畫出的組件和OS完全一致,操作系統(tǒng)的界面變化時,它的代碼基本不用變。
          叫做圖形代理法,就是使用操作系統(tǒng)的本地代碼將組件畫在虛屏中,再刷新到界面上,因此永遠(yuǎn)緊隨操作系統(tǒng)的變化而變化。

          # re: [Eclipse筆記]SWT真正的優(yōu)勢不是快這么簡單  回復(fù)  更多評論   

          2006-05-08 18:36 by 大胃
          謝謝你對本話題的關(guān)注以及對我的糾正。Swing隨著Java版本的升級不斷進(jìn)步,是我樂于看到的。

          只是我覺得Java的本質(zhì)決定了Swing不可能也沒必要做到完完全全的OS忠誠,Java的"跨平臺"和平臺之間的尤其是那些細(xì)微之處的千差萬別(不只是外觀)是一個在我看來不可能調(diào)和的矛盾。

          # re: [Eclipse筆記]SWT真正的優(yōu)勢不是快這么簡單  回復(fù)  更多評論   

          2006-05-10 14:34 by 卡卡西
          swing的MVC實(shí)現(xiàn)的相當(dāng)精彩,swing的編程模型優(yōu)雅而強(qiáng)大。swing的靈活性相當(dāng)優(yōu)秀。還有swing的架構(gòu)很美。

          # re: [Eclipse筆記]SWT真正的優(yōu)勢不是快這么簡單  回復(fù)  更多評論   

          2006-05-10 14:41 by 卡卡西
          swing當(dāng)中的組件一語雙關(guān),在概念上你可以把它看作GUI組件。在技術(shù)上它又扮演著MVC中的C 。妙。

          # re: [Eclipse筆記]SWT真正的優(yōu)勢不是快這么簡單  回復(fù)  更多評論   

          2006-05-11 09:32 by hhh
          Swing可以做到完全模仿某一個風(fēng)格,但那始終是模仿出來的.

          本地的圖形也是繪出來的,Swing用 java實(shí)現(xiàn)又怎么了。
          Swing也是一個繪制框架,它有極大的靈活性來實(shí)現(xiàn)一個新的look and feel.
          Swing是一件藝術(shù)品且具有極高的實(shí)用性。

          # re: [Eclipse筆記]SWT真正的優(yōu)勢不是快這么簡單  回復(fù)  更多評論   

          2008-03-26 20:02 by 電玩
          swing為什么要跟本地外觀保持一致?Vista就那么養(yǎng)眼嗎?有創(chuàng)意的美工 加上 優(yōu)秀的GUI設(shè)計師,windows界面有能怎么著?
          swing完全可以和flash抗衡的,目前的SWT還做不到這一點(diǎn)。等著JDK 7發(fā)布吧。你如果對桌面有興趣,到我博客上看看www.aygfsteel.com/javagui。flex和swing,我以后就搞這個了。

          # re: [Eclipse筆記]SWT真正的優(yōu)勢不是快這么簡單  回復(fù)  更多評論   

          2008-08-13 19:14 by guolan85
          怎么可以在swt的界面上加載別的控件?
          比如加個swing或者直接加別的控件
          主站蜘蛛池模板: 平罗县| 和静县| 孙吴县| 遂宁市| 马尔康县| 龙胜| 绩溪县| 平度市| 远安县| 玉林市| 龙陵县| 县级市| 肃南| 宜兰县| 中超| 昭通市| 平阴县| 江山市| 温泉县| 镇康县| 安溪县| 盐城市| 伽师县| 西华县| 望都县| 英德市| 霍林郭勒市| 苏尼特左旗| 博野县| 鄄城县| 时尚| 临颍县| 玉树县| 远安县| 安岳县| 荃湾区| 塘沽区| 图们市| 徐汇区| 康平县| 宣城市|