Qt界面控件的翻译
一:項目效果
當點擊切換語言的按鈕時,界面上的文字會自動轉換為相應的翻譯效果
具體效果如下圖(即界面設計)
點擊中英文切換前
中英文按鈕切換后
二:頭文件
#ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QTranslator> //中英文切換的實現 namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = 0); ~MainWindow(); private slots: void on_pushButton_clicked(); private: Ui::MainWindow *ui; bool isChinese; //是否為中文 }; #endif // MAINWINDOW_H 三:源文件 #include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); //界面初始化為中文 isChinese=true; } MainWindow::~MainWindow() { delete ui; } //Qt的中英文切換 void MainWindow::on_pushButton_clicked() { QTranslator translation(qApp); //定義一個翻譯 //中文界面 if(isChinese) { //刪除翻譯文件 qApp->removeTranslator(&translation); //刪除翻譯文件 ui->retranslateUi(this); } else { //翻譯文件 translation.load("./1multiLanguage.qm"); //加載翻譯的文件 qApp->installTranslator(&translation); ui->retranslateUi(this); } isChinese=!isChinese; //中英文切換 }三:參考資料及其他
程序詳細講解請見:http://blog.csdn.net/sinat_35523212/article/details/52348934
特別注意:
需要生成qm文件
并且在工具欄中要有部署才可以生效
四;項目源代碼
總結
- 上一篇: 停车场车辆定位管理系统
- 下一篇: 对比学习(二)-模型坍塌-infoNCE