Read Sean

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

          導(dǎo)航

          公告


          • 關(guān)于我
          • 人生是一場(chǎng)對(duì)話
          • gaoyuxiang AT gmail DOT com
          • titlelogo.png

          • 我的譯作
          • Scala for the Impatient
          • Open Source SOA
          • Programming in Scala

          • 聲明
          • 所有文章和代碼在這里以"現(xiàn)狀"提供,作者不提供任何形式的擔(dān)保,也沒有授予除閱讀和有條件共享之外的任何權(quán)利。除非特別說明,所有文章均為本blog作者原創(chuàng),如需轉(zhuǎn)載請(qǐng)注明出處和原作者,如用于商業(yè)目的,需作者本人書面許可。

          • 推薦文章
          • Pylons起步

          常用鏈接

          留言簿(29)

          隨筆分類(842)

          隨筆檔案(507)

          文章檔案(4)

          Friends' blogs

          搜索

          •  

          積分與排名

          • 積分 - 781167
          • 排名 - 55

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜


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

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

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

          Feedback

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

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

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

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

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

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

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

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

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

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

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

          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)勢(shì)不是快這么簡(jiǎn)單  回復(fù)  更多評(píng)論   

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

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

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

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

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

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

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

          2008-08-13 19:14 by guolan85
          怎么可以在swt的界面上加載別的控件?
          比如加個(gè)swing或者直接加別的控件
          主站蜘蛛池模板: 霍山县| 门源| 南开区| 耒阳市| 康乐县| 读书| 南靖县| 甘谷县| 建宁县| 遵化市| 铜梁县| 仲巴县| 江山市| 永定县| 象州县| 凤凰县| 石屏县| 石渠县| 安国市| 乌鲁木齐县| 和田县| 延安市| 增城市| 金湖县| 乌兰察布市| 榆树市| 通海县| 塔河县| 东光县| 沾益县| 巴林右旗| 运城市| 小金县| 扎赉特旗| 驻马店市| 抚宁县| 虹口区| 南昌市| 黄梅县| 那曲县| 昌都县|