全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2277
推到 Plurk!
推到 Facebook!

[推薦] 怎樣編寫支援多國語言的程式

 
axsoft
版主


發表:681
回覆:1056
積分:969
註冊:2002-03-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-07-26 15:49:51 IP:61.218.xxx.xxx 未訂閱

怎樣編寫支援多國語言的程式, 讓它能夠根據所運行的操作系統自動顯示對應的文字。 而且不但要替換Windows標準對話框, 還要自動替換Form標題、 按鈕標題等所有顯示的文字和所有錯誤提示

作者:孫立 資料來源:Borland 中國http://www.borlandsoftware.com.cn/devsupport/delphi/multilang.shtml 使用Delphi/C Builder的Integrated Translation Environment (ITE)可以輕易得完成這個工作。 我們建立一個Demo的專案檔 MultiLanguage, 在Form上放一個Label和一個Button, 分別把Caption為“English Label” 和“English Button”。 選擇選單Project|anguages|Add ..., Delphi顯示Add Languages對話框, 選擇Next。 從語言列表中選中“英語(美國)” 和“中文(中國)”, 選擇Next。 ITE會根據所選的語言建立子目錄,目錄名稱是語言的縮寫,選擇Next。 第一次增加語言時, Update Mode固定為Create new, 選擇Next。 選擇Finish。 Delphi/C Builder會自動建立支援不同語言的資源動態庫。 Delphi/C Builder還會自動建立一個專案檔, 其中包括原有的MultiLanguages.EXE, 還包括新建的兩個資源動態庫 (MultiLanguages.enu, MultiLanguages.chs)。 保存專案檔。 Delphi/C Builder啟動Translation Manager, 左邊是需要翻譯的語言, 右邊是完成百分比。 選擇“中文(中國)”|Forms|Unit1, 在右邊第15行和20行填寫翻譯後的中文。 保存並關閉。 打開Project Manager, 編譯MultiLanguages.enu和MultiLanguages.chs, Delphi/C Builder會在對應的子目錄生成資源動態庫, 但後綴不是DLL而是ENU和CHS。 有三方法可實現語言切換: 1.把所有的語言包(.DEU,.ENU等文件,和Exe文件同名)放在和Exe相同的目錄下, 它就會根據系統的語言環境自動選擇。 2.採用Demos\Richedit示例演示的方法。 3.在注冊表HKEY_CURRENT_USER\Software\Borland\Locales\中指定可執行文件的 路徑\文件名和語言包的擴展名,Exe文件會查詢該鍵值切換語言。其實在Delphi/BCB 的Project\Languages\Set Active...菜單中的操作就是修改該鍵值。 在Delphi 5 帶的Demos\Richedit 示例演示了動態切換語言的技術。 請仔細研究它的源碼。在自己的程序中使用可能要借用到它的一些Unit。 時間就是金錢---[ 發問前請先找找舊文章] 發表人 - axsoft 於 2002/07/26 16:38:58
系統時間:2024-03-29 8:38:12
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!