Qt Linguist

Qt有一個叫做Qt Linguist的工具可以很方便的實現多語言化,具體操作如下:

  1. 使用Qt菜單上的Create New Translation File...命令創建一個語言文件,可以選擇很多種不同的語言,比如我選擇了中文(zh),生成一個helloqtwindows_zh.ts;
  2. 找到解決方案中的Translation Files/helloqtwindows_zh.ts,在文件上單擊右鍵,選擇Open with Qt Linguist...命令,用Qt Linguist打開這個文件;
  3. 在Qt Linguist裏面將每一個句子手動翻譯,其中,這些單詞正是我用QObject::tr標出的所有句子;
  4. 保存,然後在main函數中增加下面一段代碼:
    int main(int argc, char *argv[])
    {
    QApplication app(argc, argv);
    QTranslator translator;
    translator.load("helloqtwindows_zh");
    app.installTranslator(&translator);
    HelloQtWindows w;
    w.show();
    app.connect(&app, SIGNAL(lastWindowClosed()), &app, SLOT(quit()));
    return app.exec();
    }
  5. 最後,還是在那個ts文件上單擊右鍵,選擇Run lrelease命令,生成qm文件,這樣再運行程序整個界面就變成中文的了!

這裏要注意一下,如果程序在源碼中修改了任何的內容,在發佈之前一定在ts文件上面按右鍵,選擇Run lupdate命令重新生成ts文件,Qt會很智能的把所有內容改變的字符串或新增的字符串更新,在Qt Linguist裏面的Context視圖中顯示爲問號,讓我們一個都不會漏過。真的是方便到家了!

OK,最簡單的Hello world應該到此爲止了,這就是今天的全部內容。Qt有一個Qt Assistant,它的功能就像是MSDN一樣,提供了所有設施的說明和簡單示例,同時還有一個Qt Examples and Demos,它包含很多的Examples,是學習Qt的最好參照物。在網上還可以找到C++ GUI Programming with Qt4這本書,對Qt的介紹非常的簡單明瞭,很值得一看(我纔剛剛開始翻,看完了再給大家介紹)。還有網上的各種資源,靈活使用搜索引擎吧!

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