向你的程序中添加多語(yǔ)言支持
發(fā)布時(shí)間:2008-08-06 閱讀數(shù): 次 來(lái)源:網(wǎng)樂(lè)原科技
首先,在你創(chuàng)建了一個(gè)應(yīng)用程序后,需要?jiǎng)?chuàng)建一個(gè) dll ,該 dll 包含了你程序的資源,資源的 ID 與你程序的完全相同,但內(nèi)部的語(yǔ)言不同。
具體方法如下:新建一個(gè) dll 項(xiàng)目,然后把你程序的資源文件復(fù)制到 dll 項(xiàng)目資源中即可,接下來(lái),修改 dll 項(xiàng)目中資源的語(yǔ)言(這可能需要花一點(diǎn)時(shí)間)。然后只要簡(jiǎn)單修改一下你的程序代碼就可以了:
在 CWinApp 繼承類中,添加一個(gè)成員變量(我使用的是日語(yǔ)):
...
HINSTANCE hJapaneseDll //Global var
.....
在 InitInstance 中添加一下代碼(粗體部分是我添加的):
CMultiLangApp::InitInstance()
{
......
//Get Language Setting from INI
uLanguage = GetProfileInt("Language", "Language",0);
if (uLanguage == 1)
{
//Language is set for Japanese.
hJapaneseDll = AfxLoadLibrary("Japanese.dll");
ASSERT(hJapaneseDll);
AfxSetResourceHandle(hJapaneseDll);
}
.....
//create dialog or main frame
.....
}
最后,你可以添加一個(gè)菜單項(xiàng)或者單選按鈕,用于切換語(yǔ)言,具體請(qǐng)看代碼