QTextEdit的右鍵菜單仍然是英文(整理版)


達到效果:

參看這篇博客應該:http://blog.csdn.net/suirosu/article/details/45313525

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

qt5把qt_zh_CN.qm加載了,但QTextEdit的右鍵菜單仍然是英文,而QLineEdit的倒是中文。怎樣設置使得QTextEdit的右鍵菜單是中文


雖然時間已過去很久,但我還是要回復一下,因為我找到了解決方法,希望能對其他人有幫助。
問題的原因在於: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語言家->更新翻譯,
注意:找不到lupdate.exe不會提示,請看下面概要提示,確保文件存在,成功會顯示:
Starting external tool "E:\qt\qt5.5\qtbase\bin\lupdate.exe" E:/qt/qt5.5/qtbase/src/widgets/widgets.pro
Updating 'widgets.ts'...
Found 219 source text(s) (219 new and 0 already existing)

"E:\qt\qt5.5\qtbase\bin\lupdate.exe" finished

就會在widgets.pro所在目錄下生成一個widgets.ts文件,用Qt Linguist打開widgets.ts,找到QWidgetTextControl,翻譯相關選項,然后選擇:文件->發布,就會在widgets.ts所在目錄生產一個widgets.qm文件,然后用下面的方式應用到項目中即可:
C/C++ code

 

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);

////////////////////////////////////////////////////////////////

關鍵點:

 

 

在資源管理器里把這幾個文件加載進去,並在高亮的地方寫對文件的路徑。

上圖:對應的路徑translator.load(QString(":/qm/qt_zh_cn"));  

 

關鍵點,所以的文件都生成成功了,代碼也寫對了,不起作用的主要原因是文件的路徑沒有填寫正確。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM