一天一夜沒睡,又搞定了很多功能.
本來想弄完再**,思路是有的,但發現時間還是不大夠,現在大腦有點點疲憊了...呵呵,只有上來寫寫筆記,寫rcp的過程就是學習的過程,其中的知識點不記下來容易忘記哦.
1.關於view裡的許多事件監聽:
我在寫自己的**前看了在eclipse裡面找**看了看,學到了不少,在eclipse的世界裡,許多法則都很重要,在我看來,如果要說哪個最重要的話,就應該是"有樣學樣"法則了:p
畢竟,基本上你需要的功能,人家都寫過了,你自己的辦法也許很好,但是看別人的**,你會發現自己的**是那麼蹩腳,加上eclipse本來把擴充套件性放到首位的,裡面的**很多都相當優秀,就是乙個大寶庫.
但是這麼大的寶庫,太大了,容易嚇到人,尤其是象我這樣的菜鳥.其實,只要用好eclipse自帶的搜尋功能,強迫自己多試兩次就好了.
比如我要查別人寫的view的**,我有兩種方法,都很簡單:1)直接按類名查:輸入*view《就可以了.2)按方法查:view一定有createcontextmenu()吧,按方法名查詢也能找到.
我看的是antview的**,有下面這些要點值得注意:
1)讓它實現iresourcechangelistener介面
當整個workbech有任何檔案有改動時會接受到事件.
2)寫乙個update介面,裡面只有乙個方法update();讓所有的action都實現這個介面,然後在view裡用乙個list裝下所有產生的action.
再寫乙個updateprojectactions方法,當有資源改變時就呼叫它,依次update所有action.就能夠及時的讓action改變狀態,比如能用或是不能用.
private void updateprojectactions()
}3)讓view裡的control實現幾個常用的介面.
比如,如果view裡面是乙個treeviewer,可以讓它分別實現:
addselectionchangedlistener
adddoubleclicklistener
addkeylistener
4)用imemento儲存view的狀態,這樣關掉view再開啟都沒有影響,本來以為這個方法不大好用,今天算是見識到例項了:p改天好好研究研究.
2.兩個eclipse裡的小技巧:
1)在當前**編輯editor裡,按ctrl+t,可以看到它的所有超類和子類,很方便.
2)ctrl + 1是讓eclipse自動修補錯誤,很方便.
3.關於視窗裡的資料格式的判斷
這看起來好象很簡單,我發現其實裡面也蠻有學問的,特別是乙個視窗裡有多個輸入資料需要判斷格式是否正確的時候.
就拿我的程式來說吧,如下的視窗,要判斷是否有空白欄,要判斷時間日期的格式,要判斷**是否為float,然後日期年月日要在乙個正常的範圍
裡,還要友好的提示使用者.
我沒有看**,因為jface提供乙個類似的工具,我自己乾脆直接寫了算了,以後有時間再換.
剛開始的方法很爛,到一半想到乙個好方法,這樣的思路:
private int
blank_error = 0,
price_error = 0,
format_error = 0,
year_error = 0,
month_error = 0,
day_error = 0;
//這個字串陣列第乙個為"",我的方法優點就在於這裡
private string error = new string;
//然後每個檢查的方法在檢查後,如果有錯就把對應的數字改為乙個整數,第乙個為1,第二個方法為2,依次類推...
private void checkblank()
}if(isblank)
blank_error = 1;
}/**
* check if the price if a float
*/private void checkprice() catch(exception e)
if(notfloat)
price_error = 2;
}...
然後判斷錯誤直接用||操作符幾個簡單的if else就搞定了,象這樣:
if(price_error != 0||year_error != 0 || month_error != 0|| day_error != 0)
哪個有錯誤,會自動顯示對應的錯誤提示,哪乙個沒錯也不要緊,因為error[0]是空字串.
這個方法我自己想出來的,一定有更簡單的方法,以後看到再說咯.
4.關於eclipse rcp程式的匯出,費了很大的勁,哎,一言難盡,以後時間多了再慢慢說,而且我現在還不是懂得特別多.
關於rcpfinance pro的v2.0的計畫,我現在的進度是這樣的:
1)table view增加刪除資料功能.
2)檢查時間的格式,能對適當列進行排序.
3)增加對滑鼠事件的支援.
4)支援同時修改多份資料.
5)開啟新檔案時,如果沒有儲存則提示使用者.
6)安全讀寫檔案.
7)增加help文件.
8)增加intro view.
9)增加perspective.
10)增加自動公升級功能.
5.放幾個截圖上來:
intro view
幫助按f1,彈出對應的動態幫助
公升級,搜尋擴充套件,管理擴充套件:
嘿嘿,等會就睡覺了,爭取兩天內搞定2.0
RCP財務管理程式v2 0計畫
rcp finance pro v1.0已經完成了,世界上所有1.0版本軟體所有的問題我這個程式也難以避免.軟體行業的三次改良法則是乙個軟體經過3次公升級後才會有令人滿意的效能.寫1.0時的過程學到了不少關於rcp的知識.反正閒著也是閒著,呵呵,我決定繼續把它寫下去.因為宣傳不到位.沒多少人給我反饋...
RCP財務管理程式v2 0計畫
rcp finance pro v1.0已經完成了,世界上所有1.0版本軟體所有的問題我這個程式也難以避免.軟體行業的三次改良法則是乙個軟體經過3次公升級後才會有令人滿意的效能.寫1.0時的過程學到了不少關於rcp的知識.反正閒著也是閒著,呵呵,我決定繼續把它寫下去.因為宣傳不到位.沒多少人給我反饋...
Oracle財務管理系統
oracle 總帳模組的乙個會計業務週期如下 1.開啟總帳會計期 2.錄入手工憑證,包括 手工標準憑證 外幣憑證 統計憑證 3.從子模組引入憑證,如 應收 應付 庫存等模組 4.利用定義好的經常性憑證模板生成憑證 經常性憑證模板包括 框架憑證模板 有固定帳戶無金額 生成須手工填寫 標準憑證模板 固定...