夏日部落客BloggerAds《2008‧夏》

2008年5月28日 星期三

實作應用程式多國語言功能(C#)

image

雖然在C/C++的環境下(Borland C++ Bulider),實作過多國語言的功能,但是其實並不是很滿意,因為其實簡單來說就是每個表單(Form)的控制項必須自己維護所用的控制項,讀取對應的文字檔(*.ini or *.xml),在對控制項作該語言的顯示,這樣來說可以說是相當累,(1)因為每個開發者都須知道整個多國語言的架構跟使用方法,(2)控制項更名程式碼必須對應修改,(3)而且每個Form的程式碼都會顯的很亂,如果能有一個物件能夠直接轉換多國語系,使用上簡單且只要負責維護多國語言文字檔部分,這不知道該有多好!   所以我這星期就在實作這一個部份,這個物件包含(1)使用者介面(UI)的選單生成(這樣維護多國語言物件就不需要再跟UI層的設計者溝通修改,而且可以掌控目前所支援的語系),(2)程式將表單(Form)上的控制項名稱及顯示文字全部寫入指定的檔案路徑(便於自動產生維護檔,在針對維護檔做多國語言的翻譯),(3)實作轉換語系中介層(這樣任何語系皆能互相轉換)。  雖然第一次實作上比較累,但以後有AP要轉換語系,就能用我這個萬用物件嚕,不過目前支援的控制項只有Button, Label, LinkLabel, ToolStrip, GroupBox, TreeView, ListView, MenuStrip, DataGridView, CheckBox,有些控制項上還有子控制項,藍色字的控制項就需要遞迴處理,才能真正的全部轉換。

0 意見: