Winfrom支援多語言解決方案!(總結)

2022-04-30 21:36:23 字數 1411 閱讀 5267

一直做窗體應用程式,前段時間客戶提出,要求系統支援多語言切換功能的需求。

具體需求

1、系統登入時記錄系統當前的語言狀態。

2、系統在執行過程中可以隨時切換系統的語言。

3、在中、英、韓三種語言進行切換。

解決方案一:

1、登入視窗與主系統分開。

2、登入系統時選擇系統語言。

3、根據所選擇的系統語言載入相應的系統。

注:此解決方案需要乙個登入介面,以及中、英、韓三種語言的系統各乙個。

解決方案二:

資源檔案解決法:

1、製作乙個winfrom介面時,設計介面下所有控制項均增添完畢(如下圖)。

2、選擇當前form,設計->language,由當前default選擇我們需要的語言種類(如下圖)。

3、在英文語言狀態下編輯視窗的具體資訊(如下圖)。

4、上述操作完成之後,在form的解決方案下多了乙個資源檔案(如下圖)。

焦點資源檔案就是在我們在英文狀態下設計之後系統自動生成的資源檔案。

5、重複以上操作在中文、韓文狀態下將介面設計完畢,vs將會生成中文、韓文的資源檔案。

以上操作介面設計任務完畢。

實現三種語言的切換:我們引進乙個languagechange類:

1 class langugechange

2 {3

public

static

void setlang(string lang,form form,type frmtype)

4 {5 thread.currentthread.currentuiculture=new system.globalization.cultureinfo(lang);

6$this

private

static

在窗體載入過程中,呼叫languagechange類中的方法,實現需要載入的系統語言。

在實際的編寫**,以及設計過程中,我們為了方便設計,購買了一些功能強大、外觀漂亮的控制項,有些控制項並不是control下的,所有這些控制項需要單獨考慮例如。devexpress下的barmanager控制項,在為此控制項做多語言切換時,在語言切換類中需要單獨考慮此情況。

有些控制項具有層數,這邊所謂的層數是控制項中還會包含分支;舉個例子menustrip-->toostripmenuttem這就是控制項中包含分支,在對分支的處理還要進行遞迴。

本人第一次發,如有錯誤歡迎指正!

iOS支援多語言

找到info localizations 選擇需要新增的語言 新建strings檔案,名字為localizable 3.為localizable.strings新增不同的支援語言 4.在string檔案中設定不同的key值對應在不同語言下應該顯示的字元 5.使用示範 uilabel lb uilab...

inno 多語言支援

languages name en messagesfile compiler default.isl licensefile c license en.txt name fr messagesfile compiler languages french.isl licensefile c lice...

Silverlight如何支援多語言

利用資源檔案 resources file 使silverlight支援多語言。1.建立乙個silverlight應用程式,multilanguagedemo。3.新增string型別的資源,這裡新增 usernamestring user name。設定access modeifer為public...