qt實現軟體介面顯示不同的語言,是通重載入字型檔檔案實現的,因此有三個對應的問題需要解決:
建立qt應用程式後,
在.pro檔案中新增一行**:
translations += qmain_zh.ts
使用qtcreator選單中的【工具】->外部->qt語言專家->更新翻譯
則會自動生成.ts檔案,使用qt linguist語言家軟體開啟.ts檔案,編輯語言的翻譯;
如果是在**中動態設定的文字,在需要被翻譯的字串前面新增標識tr,比如:
qstring str = tr("hello world!");
這樣翻譯工具就會根據這個tr標記去提取字串,然後進行翻譯;
在**中的動態文字進行翻譯
在ui設計器介面上新增的文字
本示例設計的介面如下:
給兩個按鈕分別新增槽函式如下:
translator是qtranslator型別的私有成員
重新實現protected方法changeevent(qevent *event)
void mainwindow::changeevent(qevent *event) break; default: break; }}
**執行效果:
全部**:
mainwindow.h
#ifndef mainwindow_h#define mainwindow_h#include #include namespace ui class mainwindow : public qmainwindow;#endif // mainwindow_h
mainwindow.cpp
提取碼:qyfs
Qt 發布應用程式
qt 官方開發環境使用的動態鏈結庫方式,在發布生成的exe程式時,需要複製一大堆 dll,如果自己去複製dll,很可能丟三落四,導致exe在別的電腦裡無法正常執行。因此 qt 官方開發環境裡自帶了乙個工具 windeployqt.exe。以官方 qt 5.8.0 mingw 開發環境為例,從開始選單...
Qt發布應用程式
1.首先找到你的qt的安裝位置 例如我的位置 d qt58 找到d qt58 5.8 msvc2015 64 bin windeployqt.exe 2.找到你想要發布的應用程式的資料夾 例如我的位置 d xx qtdoc build release release xtest.exe 3.管理員方...
Qt應用程式的發布
windeployqt.exe是qt自帶的windows平台發布工具。windeployqt.exe檔案在qt的bin目錄下,qt的每乙個編譯器版本均有獨立的目錄,在我的計算機上安裝了mingw32,mingw64,msvc2017 32bit,msvc2017 64bit這四個編譯器版本。如下圖為...