問題的原因在於:QTextEdit中使用的對象QWidgetTextControl中的複製、粘貼等右鍵菜單選項在qt_zh_CN.qm中沒有被翻譯。
解決方法:打開qt-everywhere-opensource-src-5.2.0\qtbase\src\widgets目錄,用Qt Creator打開widgets.pro文件,
添加一行:TRANSLATIONS += widgets.ts
然後在Qt Creator的系統菜單中,選擇:工具->外部->Qt語言家->更新翻譯,就會在widgets.pro所在目錄下生成一個widgets.ts文件,用Qt Linguist打開widgets.ts,找到QWidgetTextControl,翻譯相關選項,然後選擇:文件->發佈,就會在widgets.ts所在目錄生產一個widgets.qm文件,然後用下面的方式應用到項目中即可:
1
2
3
4
5
6
|
QTranslator translator; translator.load(QString( ":/cfg/xml/widgets.qm" )); app.installTranslator(&translator); QTranslator translator2; translator2.load(QString( ":/cfg/xml/qt_zh_CN.qm" )); app.installTranslator(&translator2); |