• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            為生存而奔跑

               :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
              271 Posts :: 0 Stories :: 58 Comments :: 0 Trackbacks

            留言簿(5)

            我參與的團(tuán)隊

            搜索

            •  

            積分與排名

            • 積分 - 328615
            • 排名 - 74

            最新評論

            閱讀排行榜

            評論排行榜

            0.序言

                    還是老風(fēng)格,從頭寫些基本的東西,幫助自己,也幫助正處于困惑中的別人。今天介紹的是Eclipse下的SWT的配置過程。自己前兩天要做個項目,配置了半天都不正確,后來慢慢總結(jié)了一下,不同環(huán)境配置的方法可能略有差別吧。
            1.什么是SWT
                    用java的人一定都知道AWT和Swing,而SWT(Standard Widget Toolkit)則是由Eclipse項目組織開發(fā)的一套完整的圖形界面開發(fā)包,雖然當(dāng)初僅僅是IBM為了編寫Eclipse的IDE環(huán)境才編寫的一套底 層圖形界面 API,但是隨著Eclipse的大范圍使用,人們也開始對這套GUI開發(fā)包做了深入的研究,并且不少人都開始轉(zhuǎn)向SWT的使用。也許有人會問,既然有了 Swing, 那為什么還要SWT?答案很簡單,因為人們的理念不同。SWT的原理是根據(jù)運行者的操作系統(tǒng)不同調(diào)用JNI來完成圖形界面的繪制的,如果你用的是 Windows,那么建立的窗口就是windows風(fēng)格的,還可以用XP的皮膚,如果是Linux或者M(jìn)acOS的話,則在代碼不改變的情況下,繪制出相 應(yīng)風(fēng)格的界面。而Swing則是完全從底層開始自己“手繪”界面的,這也就導(dǎo)致了速度比較慢和工人的“風(fēng)格詭異”的問題。當(dāng)然,由于Sun的強(qiáng)大推動力和 AWT/Swing的普及,很多人仍然在使用Swing作為首選的GUI開發(fā)工具包。引用一句話做比喻:Swing就像Java決定不通過操作系統(tǒng)來實現(xiàn) 原生的IO,而是通過磁頭馬達(dá)API自己來讀磁盤的扇區(qū)。Swing基本上就是這樣的,它拿著個底層的“paint(Graphics)”方法,自己來繪 制所有的窗口組件。
            2.下載與安裝
                    Eclipse本身就自帶了SWT的相關(guān)jar包,所以不用下載,除非你想看看SWT的源碼,當(dāng)然這對于開發(fā)者來說是很有好處的。另外,如果不喜歡自己手 寫GUI代碼的話就去下載一個可視化開發(fā)插件吧,目前比較常用的是WindowBuilder Pro(原來的swt designer),http://www.instantiations.com/windowbuilderpro/左側(cè)點Download里面就可以下載,根據(jù)不同的Eclipse版本,選擇相應(yīng)的文件,必須要說明的,這是一個商業(yè)軟件,需要注冊(這也就以為著有注冊機(jī)可以下載,注冊機(jī)的地址就不多說了,上網(wǎng)搜一下就可以了)。下載完成后,安裝即可。
            3.配置
                    我下載的是zip版,解壓縮之后直接拷貝到插件目錄下的,所以配置起來有些麻煩,之前貌似用過一個二進(jìn)制安裝程序版的,安裝完之后基本上不需要配置就可以用了。這里講解一下我配置的過程。
                    打開Eclipse,新建,在新建向?qū)е校业絊WT/JFace Java Project,單擊Next。

            接下來輸入項目名稱,選擇JRE(一般默認(rèn)即可),單擊Next,在這一步中,選中Libraries選項卡,單擊Add External JARs,添加外部jar包。

            這里一共要添加6個,在你的Eclipse的插件(plugins)目錄中,分別是:
            org.eclipse.swt.win32.win32.x86_3.2.1.v3235.jar;
            org.eclipse.swt_3.2.1.v3235e.jar;
            org.eclipse.core.commands_3.2.0.I20060605-1400.jar;
            org.eclipse.jface.text_3.2.1.r321_v20060810.jar;
            org.eclipse.jface_3.2.1.M20060908-1000.jar;
            org.eclipse.equinox.common_3.2.0.v20060603.jar
            根據(jù)版本不同,文件名的數(shù)字部分可能會有些不同,添加好后就可以單擊finish了。
                    這時就建立好一個SWT項目了,但是別著急,如果這時按照Run as Java Application的形式運行你的SWT程序的話很可能會提示:Exception in thread "main" java.lang.UnsatisfiedLinkError: no swt-win32-3235 in java.library.path。這是由于沒有導(dǎo)入SWT原生庫的緣故。因此我們要右鍵單擊項目,選擇Import,接下來選擇General-〉 File System來導(dǎo)入它,這個swt-win32-3235以dll文件的形式存在于..\MyEclipse\eclipse\plugins \org.eclipse.swt.win32.win32.x86_3.2.1.v3235中,通過Browse按鈕選擇這個目錄,然后在窗口左邊選中 這個目錄,在右邊的文件中選中swt-win32-3235.dll這個文件,finish就可以了。


            4.測試
                    在新建好的項目中單擊右鍵,選擇新建,Designer->JFace->ApplicationWindow,填入新建的類名稱和包就可以 新建一個ApplicationWindow了,系統(tǒng)會自動建立好相應(yīng)的代碼框架,選擇Run as Java Application,就可以運行這個自動生成的SWT程序了。
            5.結(jié)束語
                    說實在的,SWT有很多值得研究的東西,包括Eclipse的插件開發(fā)相關(guān)技術(shù),當(dāng)然以后有時間會把學(xué)習(xí)心得寫出來的。這篇文章只是簡單的介紹了SWT的配置過程,如果需要了解SWT相關(guān)技術(shù)可以查詢相關(guān)資料。
            posted on 2009-10-20 11:00 baby-fly 閱讀(8009) 評論(0)  編輯 收藏 引用 所屬分類: Java
            久久久久青草线蕉综合超碰| 久久精品中文字幕一区| 狠狠色婷婷久久综合频道日韩| 久久久WWW成人免费精品| 国产高潮久久免费观看| 亚洲国产视频久久| 久久最新免费视频| 久久久久亚洲av无码专区喷水 | 日产久久强奸免费的看| 久久人人爽人爽人人爽av| 精品熟女少妇AV免费久久 | 国产精品九九久久精品女同亚洲欧美日韩综合区 | 国产精品美女久久久久| 999久久久国产精品| 噜噜噜色噜噜噜久久| 久久91精品国产91久久户| 久久精品成人| 国内精品伊人久久久久av一坑| 99久久精品九九亚洲精品| 午夜精品久久影院蜜桃| 久久精品人人做人人爽97| 久久人人爽人人爽人人片AV东京热| 久久久久久久久无码精品亚洲日韩| 欧美激情精品久久久久| 国产69精品久久久久观看软件| 久久精品国产亚洲77777| 伊色综合久久之综合久久| 久久综合九色综合久99 | 青青国产成人久久91网| 国产aⅴ激情无码久久| 久久人人爽人人澡人人高潮AV | 久久亚洲国产欧洲精品一| 久久只有这精品99| 人人狠狠综合久久亚洲88| 国内精品久久久久影院日本 | 一本一道久久a久久精品综合| 99久久人妻无码精品系列蜜桃| 久久人人爽人人爽人人片av麻烦| 亚洲一本综合久久| 91久久成人免费| 草草久久久无码国产专区|