GUI桌面編程這個話題本來就非常不好寫。這么多年,這么大一個領域,真真正正能寫成像《深入淺出MFC》這樣的經典的書籍沒有幾本。縱觀國內在該領域出版的書籍,要么就是大篇大篇羅列這個控件那個控件怎么用,控件有哪些屬性可以設置,有哪些事件可以處理;要么就是大段大段貼代碼,而對于GUI編程的一些本質、一些哲學性的東西沒有深入的分析。在Eclipse RCP領域尤其如此,有那么幾本打著Eclipse RCP和OSGi大旗的書籍,但是其參考價值卻不比Eclipse自帶的幫助文檔大多少,大有圈錢的嫌疑。
Eclipse RCP是個好東西。用Eclipse RCP寫桌面程序,可以在一個很高的起點上構建自己的窗口應用,至于那種從頭開始寫窗口的日子是再也不復返了,甚至美工都不需要自己考慮了。(想想VC領域有多少界面庫在折磨著程序員。)還有一個好處當然是跨平臺了,雖然要背上一個Java虛擬機的負擔。(現在的Eclipse RCP程序導出時可以自己包含JRE,又大大簡化了程序部署的過程。)
五年前我寫的那幾篇博文有很多缺點,缺點一是其中有些東西我自己都沒有搞懂,所以沒辦法寫得太深入;缺點二是跳躍性太大,總共才六篇,我卻又是展示COM組件,又是展示OpenGL,雖說讓大家在視覺上是狠狠體驗的一把,但是一點也不系統。所以這次一定要改變這些缺點,爭取做到以下目標:
目標:
1.言簡意賅,對于那些有助于理解Eclipse RCP平臺的核心概念重點點出,并結合實例。對于那種在Google上一查一大把的廢話堅決不寫;
2.爭取系統性地介紹Eclipse RCP平臺可用的特性及其背后的一些設計模式,不再浮光掠影地一飄而過,也不專寫冷門偏門;
3.不追求面面俱到,有些用不到的東西肯定沒必要講,也不怕別人說我水平差;
4.當然是大量展示圖片啦。
好了,下面開工,首先,當然是創建一個Hello World,初步展示一些Eclipse RCP的效果。Eclipse RCP編程的本質就是利用Eclipse的插件機制,在Eclipse的Runtime上進行擴展來構建我們自己的窗口程序,所以,創建項目的時候當然是創建一個Plug-in Project了。只是在下面那個“Would you like to create a rich client application ?”的地方選擇yes即可。
一路Next下去,我就不多截圖了。在選擇應用程序模板的時候,選擇最簡單的Hello RCP即可。如果這時運行程序(用Run As -> Eclipse Application),可以得到一個簡單的窗口。
為了顯示Hello World,我們需要一個擴展一個View。創建一個View類,其基類為org.eclipse.ui.part.ViewPart,如下圖:
新聞熱點
疑難解答
圖片精選