QT標準彈窗按鈕翻譯中文(按鈕漢化)

本文方法QT4、QT5均適用。
百度搜索了好久,各類文章,操作起來都失敗了,所以我自己寫一個。
首先需要到Qt安裝目錄裏找到“qt_zh_CN.qm”這個文件,我的QT版本爲4.8.7,目錄在“C:\Qt\4.8.7\translations”裏,這裏有各種翻譯好的qm文件,還有相應的ts文件,如果用Linguist打開ts文件,還能看到翻譯的情況,如果你自己添加過彈窗這個設計師類,你會發現有默認的一對按鈕OK,Cancel,這兩個按鈕屬於QDialogButtonBox類,所以在Linguist裏找到這個類,你會發現如下翻譯的情況:Linguist中對QDialogButtonBox的翻譯情況
我們把qt_zh_CN.qm這個文件拷貝到項目目錄中,比如根目錄裏(你可以定義自己的位置),然後的一步是百度搜索總是不介紹的,就是一定要把這個文件添加到項目資源裏,比如我的就添加進來了:
qt_zh_CN.qm一定要添加到資源裏
然後到main.cpp裏添加如下代碼:
QTranslator translator;
translator.load(":/qt_zh_CN.qm");
a.installTranslator(&translator);
這三行代碼自然是添加到QApplication a(argc, argv);的後面了。
編譯運行,就能看到不管是QMessageBox::warning,還是QInputDialog::getText,或者是QFontDialog fontDialog(this);fontDialog.exec(),或者是QColorDialog::getColor,甚至是你自己添加的設計師類彈窗帶兩個英文按鈕的,界面和按鈕都已經翻譯成中文了。
再次強調,3個步驟:
1、拷貝qt_zh_CN.qm到項目目錄;
2、將該文件添加到資源裏(編譯時才能將該文件打包)。
3、修改main.cpp,加載這個文件。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章