如何實現已有系統的多語言轉換??

2021-04-29 05:06:29 字數 798 閱讀 5976

以前我們公司的系統是簡體版本,而且版本控制得了不好,幾乎是乙個客戶一套原始碼?當然這只是公司發展初期由於客戶的需求不同,而且我們對該行業的了解有關。最近公司發展了業務大了,當然這個業務大不是客戶多,而是客戶很大,需求也很多,其中有一條就是多語言,為了滿足海外客戶的要求,我們必須在盡量短的時候內做出多語言程式。

相信寫程式肯定都多多少少接觸過多語言程式,如果從零開始就比較好,因為可以統一規則,如何實現翻譯如可實現n多種語言轉換都可以寫個方案。但是現在不同,由於時間以及程式的穩定性的問題,我們不可能重新寫一套系統。只有在原有的基礎上進行修改。

我現在做分幾部,

1.將介面上所有有caption屬性的的值 寫入資料庫中,這樣可以對照翻譯如果要轉成其它語言就可以找到對應的字段。

2、將界布上所有hint屬性的值寫入與之相同的同乙個表中。

3、對特殊控制的處理,如combobox的item值 ,對radiogroup的item值。。。我們都得相應的做處理。

4、對程式中的message如,showmessage,inputbox,messagedlg,messagebox等寫成相應的轉換函式,這個我感覺是個難度,因為得人手乙個個的將顯示的文字寫入到對照表中,不知大家有沒有好的辦法。我現在是手工+如果該對話方塊有顯示也會自動加進。

5、匯出excel的翻譯,由於我們匯出excel是用模板控制,如果不想不同的語言用不同的模組。所以該 部分我們做了特殊處理。

6、列印報表的處理,該部分的處理與excel的處理方式相似。

在寫這些東西的時候,很感覺程式中大部分的不是從tform中直接繼承的,要不然那工作量就大了。這是我對已有程式上進行多語言轉換的處理方式

多語言系統的實現

被老美賣掉後,工作多了,工資漲得卻少了,做不完的活,現總算完成了手頭上的緊急工作,上來寫一下有關多語言系統的實現,我們的做法是 如果系統只是簡繁體,直接就可以用函式實現了.因為他們具有一一對應關係,可是其它語言呢?由於不具有語言的對照關係,只能分別寫了.最初的系統我們是採用寫多個頁面來實現,後面覺得...

系統多語言實現

早期開發未考慮全球化,英文版系統,頁面很多,每個頁面內容也很多。本地化,如果選擇特定的語言環境,應該顯示特定語言。系統簡介 1 沒有採用windows控制項,而是根據系統的特性自定義控制項,比如button,自定義的控制項為rcbuton rctextbox rclabel等。2 win form開...

QT的多語言實現

基本流程是 先生成ts檔案,然後生成qm檔案,最後通過qtranslator類來載入qm檔案,實現多語言包的切換 在qt的專案檔案 pro 中新增 translations ts yyy.ts 如果是多行,則用 分割 pro檔案 qt core gui translations login.ts s...