QT-Linguist工具主要用在項(xiàng)目的多語(yǔ)言翻譯處理過(guò)程中,,所有先簡(jiǎn)單介紹一下整個(gè)多語(yǔ)言處理過(guò)程,,最后介紹Linguist的用法。 (一)QT項(xiàng)目實(shí)現(xiàn)多語(yǔ)言,,必須做兩件事: 1)確保每一個(gè)用戶可見(jiàn)的字符串都使用了tr()函數(shù),。 2)在應(yīng)用程序啟動(dòng)的時(shí)候,使用QTranslator載入一個(gè)翻譯文件(.qm),。 tr() 的用法: caseCheckBox = new QCheckBox(tr("Match &case")); 在main()函數(shù)里載入翻譯文件: int main(int argc, char *argv[]) { QApplication app(argc, argv); //翻譯程序 QTranslator translator; translator.load("spreadsheet_cn.qm"); app.installTranslator(&translator); …… } 注意:翻譯文件加載的位置必須在界面實(shí)例化之前完成,。 (二)生成.qm翻譯文件 1、在該應(yīng)用程序的.pro文件文件中添加TRANSLATIONS項(xiàng),,可分別對(duì)應(yīng)于不同的語(yǔ)言,,如:spreadsheet_cn.ts, 對(duì)應(yīng)中文,名字可以自己定義,,后綴名.ts不可變動(dòng),。<.ts是可讀的翻譯文件,使用簡(jiǎn)單的XML格式,;而.qm是經(jīng)過(guò).ts轉(zhuǎn)換而成的二進(jìn)制機(jī)器語(yǔ)言> 2、翻譯文件,。分三步來(lái)完成: 1)運(yùn)行l(wèi)update, 從應(yīng)用程序的源代碼中提取所有用戶可見(jiàn)的字符串,。 2)使用Qt Linguist 翻譯該應(yīng)用程序。 3)運(yùn)行l(wèi)release,,生成二進(jìn)制的.qm 文件,。 以上三步均需用到QT自帶的命令行控制臺(tái),,啟動(dòng)方法:開(kāi)始--->所有程序--->Qt by Nokia v4.6.3 (OpenSource)--->Qt 4.6.3 Command Prompt 啟動(dòng)命令行后,對(duì)應(yīng)輸入如下命令: 1)lupdate –verbose spreadsheet.pro //生成相應(yīng)的.ts 文件 2)linguist //啟動(dòng)Linguist語(yǔ)言翻譯工具,,可以翻譯相應(yīng)可見(jiàn)字符串 3)lrelease –verbose spreadsheet.pro //將翻譯好的文件生成.qm文件 (三)Linguist 語(yǔ)言工具的使用 1)啟動(dòng):命令行或者開(kāi)始菜單均可 2)打開(kāi):工具界面中的File--->Open,,可以打開(kāi)所需的 .ts 文件 3)翻譯:界面中部的翻譯欄,兩行:第一行:Source Text 第二行:… Translation, 在地二行進(jìn)行相應(yīng)的翻譯即可,,翻譯完一條之后點(diǎn)擊“確定下一個(gè)”按鈕,。 4)發(fā)布:點(diǎn)擊File--->Release, 生成 .qm 文件。(與命令行的效果一樣) |