QT工程国际化
以前用Qt4的庫寫程序,遇到中文顯示問題都是用QtPlugin中的Codec解決,詳見《QT數據庫驅動和多國語言驅動部署注意事項》。后來升級到Qt5以后plugins目錄下不再有Codec文件夾,原來的方法就失效了,只能用添加翻譯資源文件的標準“國際化”方法,這一改動估計是Qt變得更加規范的體現。
本文記錄使用資源文件進行多語言支持的方法。
1.?在需要被翻譯的字符串前面加標識tr,如QString str = tr(“hello,world!”); 因為翻譯工具會把源碼中tr標識的字符串提取出來,翻譯成其他語言,如果沒有用tr標識的,不會被工具提取。在QtDesigner的界面中輸入文字時,默認已經是加上tr的了,所以在翻譯時也能看見。
2. 如下圖,在安裝了qt-vs-addin的Visual Studio中點擊QT菜單,選擇Create new Translation File,會看到在解決方案資源管理器中增加了一個后綴為ts的文件。
3. 如上圖,點擊Launch Linguist,打開QT語言編輯器,可以看到每一處用tr標識出的代碼,逐一為它們添加翻譯文本
4. 如果源碼有修改,例如新加了tr,則需要更新ts文件,在ts文件上右鍵點擊lupdate即可。
5. 當所有項全部翻譯完成后,點擊lrelease,將ts文件發布為后綴為qm的二進制文件。
6. 在程序入口處添加加載翻譯器的代碼。
5. 發布時將qm文件和可執行程序放在同一目錄下即可。
總結
- 上一篇: 是不是学了动量后对学习电学更有帮助
- 下一篇: Android Studio上手,基于V