国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

Qt 動態(tài)切換語言 附源碼

移動開發(fā)
Qt的國際化設計提供了這種可能。要實現(xiàn)這種動態(tài)切換,只需要在程序里使用一點小小的技巧,就不是把調(diào)用了Qt翻譯語句tr的代碼集中在某個和窗體變化無關的函數(shù)里,

本文講解的是Qt 動態(tài)切換語言,在編寫國際化程序的時候,在很多情況下都是在系統(tǒng)啟動的過程中選擇語言,然后加載對應的地方語言翻譯文件,實現(xiàn)語言的本地化。

但是也會有用戶需要進行動態(tài)的語言切換(Dynamic Language Switching),也就是在程序主>體都運行起來后,需要改變語言的選項。而用戶不希望因為語言切換而引起程序的重啟或者窗口的關閉。

Qt的國際化設計提供了這種可能。要實現(xiàn)這種動態(tài)切換,只需要在程序里使用一點小小的技巧,就不是把調(diào)用了Qt翻譯語句tr的代碼集中在某個和窗體變化無關的函數(shù)里,比如retranslateStrings()這樣的函數(shù)里。在改變語言的時候,調(diào)用這個函數(shù)就可以了。

下面是附帶的一個演示程序,僅為證明功能使用。沒有過多考慮代碼的嚴密性。

  1. //dialog.cpp  
  2.  
  3. #include   
  4. #include "dialog.h"  
  5. Dialog::Dialog(QWidget *parent)  
  6. : QDialog(parent)  
  7. {  
  8.     label=new QLabel(this);  
  9.     okButton=new QPushButton(this);  
  10.     connect(okButton,SIGNAL(clicked()),this,SLOT(switchlang()));  
  11.     flag=0;  
  12.     retranslateStrings();  
  13.  
  14.     QVBoxLayout *mainLayout = new QVBoxLayout;  
  15.     mainLayout->addWidget(label);  
  16.     mainLayout->addWidget(okButton);  
  17.     setLayout(mainLayout);  
  18. }  
  19.  
  20. void Dialog::retranslateStrings()  
  21. {  
  22.     label->setText(tr("Name:"));  
  23.     okButton->setText(tr("Switch Language"));  
  24.     setWindowTitle(tr("Switch Language ..."));  
  25. }  
  26.  
  27. void Dialog::switchlang()  
  28. {  
  29.     QTranslator translator;  
  30.     if(0==flag){  
  31.         translator.load("switchlang_zh");  
  32.         flag=1;  
  33.     }else  
  34.     {  
  35.         flag=0;  
  36.     }  
  37.     qApp->installTranslator(&translator);  
  38.     retranslateStrings();  
  39. }  
  40. //dialog.h  
  41. #ifndef DIALOG_H  
  42. #define DIALOG_H  
  43. #include   
  44. class QLabel;  
  45. class QPushButton;  
  46.  
  47. //! [0]  
  48. class Dialog : public QDialog  
  49. {  
  50. Q_OBJECT  
  51. public:  
  52.     Dialog(QWidget *parent = 0);  
  53. private:  
  54.     QLabel *label;  
  55.     QPushButton *okButton;  
  56.     int flag;  
  57. private slots:  
  58.     void retranslateStrings();  
  59.     void switchlang();  
  60. };  
  61. //! [0]  
  62. #endif  
  63. //main.cpp  
  64. #include   
  65. #include "dialog.h"  
  66. int main(int argc, char *argv[])  
  67. {  
  68.     QApplication app(argc, argv);  
  69.     Dialog dialog;  
  70.     dialog.show();  
  71.     return app.exec();  
  72. }  
  73. //switchlang.pro  
  74. TEMPLATE = app 
  75. TARGET =  
  76. DEPENDPATH += .  
  77. INCLUDEPATH += .  
  78. # Input  
  79. HEADERS += dialog.h  
  80. SOURCES += dialog.cpp main.cpp  
  81. TRANSLATIONS+=switchlang_zh.ts 

小結:

責任編輯:zhaolei 來源: 互聯(lián)網(wǎng)
相關推薦

2011-06-30 13:37:29

MFC Qt 多國語

2011-06-21 09:19:24

Qt 界面 多國語言

2013-04-03 11:12:57

Java幻燈片切換

2011-07-20 10:50:19

蘋果 OpenCL 多線程

2011-06-23 11:16:39

Qt Excel

2011-06-23 14:27:48

QT QLibrary 動態(tài)庫

2011-03-03 15:32:51

Qt-Quick

2010-03-23 09:16:43

Python源碼剖析

2011-06-23 15:10:39

Qt 窗體

2011-06-23 14:05:32

Qt 事件機制

2011-06-23 15:32:05

Qt Windows消息

2011-06-28 16:18:24

Qt QObject

2011-07-20 11:09:58

蘋果 OpenCL 變量

2011-06-27 16:59:19

Qt 動態(tài) 插件

2011-06-15 17:08:31

Qt Symbian 切換

2025-02-26 10:40:40

2011-06-24 09:01:20

Qt QLibrary dll

2011-06-09 11:11:35

QT 靜態(tài)庫 動態(tài)庫

2011-01-06 09:00:01

靜態(tài)語言動態(tài)語言

2022-05-17 10:42:36

reboot源碼解析
點贊
收藏

51CTO技術棧公眾號

久久婷婷国产综合尤物精品| 天堂地址在线www| 在线观看日韩av电影| 久久久av免费| 天堂电影一区| 日韩欧美一区在线观看| 天堂在线中文资源| 一区二区三区中文字幕精品精品 | 国产在线观看av| 午夜亚洲福利老司机| 91日韩视频在线观看| 99久久精品费精品国产一区二区| 亚洲最大色综合成人av| 青青草国产精品亚洲专区无| 欧美精品国产精品久久久 | 成人国产精品免费网站| 亚洲一区美女| 成人在线免费观看网址| 国产视频精品一区二区三区| 97超碰人人澡| 成人久久视频在线观看| 中文字幕日韩精品无码内射| 狠狠色丁香婷婷综合| 国产一级不卡视频| 国产成人啪免费观看软件| 91精品一区二区三区四区| 国产高清精品在线| av7777777| 波多野结衣亚洲一区| 欧美变态另类刺激| 成人免费在线播放视频| 成人av影视| 亚洲不卡一区二区三区| av网站在线免费观看| 亚洲第一福利网| 久久久久久久性潮| 久久久久久综合网天天| 亚洲+变态+欧美+另类+精品| 国产在线一区二区三区| 伊人激情综合| 亚洲精品成人三区| www.在线欧美| 久久小说免费下载| 欧美日韩精品中文字幕| 动漫一区在线| 日韩久久免费视频| 亚洲91在线| 成人福利视频网| 日韩高清中文字幕一区| 欧美视频免费看欧美视频| 国产精品免费视频观看| 欧美高清成人| 亚洲美女精品成人在线视频| 中文字幕一区图| 99久久久久国产精品免费| 久久99国产精品成人| 已婚少妇美妙人妻系列| 欧美午夜宅男影院在线观看| 成年男女免费视频网站不卡| 欧美精品久久一区二区| 99伊人成综合| 日韩av片在线看| 在线国产电影不卡| av国产精品| 国产一区二区在线网站| 99在线精品一区二区三区| 夜色资源站国产www在线视频 | 狠狠干成人综合网| 特大黑人娇小亚洲女mp4| 综合婷婷亚洲小说| 羞羞视频在线免费国产| 欧美在线视频在线播放完整版免费观看| 亚洲国产精品一区| 国产 porn| 亚洲国产欧美久久| 成人在线免费小视频| 肉大捧一出免费观看网站在线播放 | 欧美激情在线观看| 亚洲专区免费| www.4438全国最大| 国产视频在线一区二区| 欧美岛国激情| 欧美 日本 亚洲| 欧美日韩国产综合一区二区 | 91av入口| 亚洲四色影视在线观看| 亚洲综合中文| av网站在线不卡| 日韩成人中文电影| 欧美激情1区2区| 日本wwwwww| 国产亚洲人成网站在线观看| 国产精品av久久久久久麻豆网| 久久久噜噜噜www成人网| 日韩女优av电影| 亚洲九九在线| 国产剧情演绎av| 精品视频9999| 国产高清精品网站| 2024最新电影免费在线观看| 91精品久久久久| 亚洲视频在线观看三级| 国产第一亚洲| 在线视频福利一区| 正在播放一区二区| 欧美激情91| 在线播放av更多| 日本亚洲欧美三级| 久久理论电影网| 色狠狠一区二区三区| 一区中文字幕在线观看| 宅男在线国产精品| 欧美午夜电影在线观看 | 丁香婷婷在线观看| 日本人成精品视频在线| 91污在线观看| japanese23hdxxxx日韩| 欧洲亚洲一区二区| 欧美视频一区二区三区| 欧美亚洲激情| av一级二级| 97精品免费视频| 国产视频一区在线观看| 欧美日韩视频免费看| 一道精品一区二区三区| 日韩一区二区三区视频在线观看| 欧美激情一级片一区二区| 午夜在线免费视频| 欧美中文在线字幕| 国产精品色婷婷| 成人知道污网站| 2020中文字幕在线| 国产不卡av在线| 亚洲午夜久久久久久久久电影网 | 久久激情一区| 成人福利片网站| 蜜桃欧美视频| 亚洲国内精品视频| 国产黄人亚洲片| a一区二区三区亚洲| 日日摸天天爽天天爽视频| 久久亚洲影音av资源网 | 青青在线视频免费观看| 亚洲无亚洲人成网站77777| 懂色一区二区三区免费观看 | 欧美成人乱码一区二区三区| 蜜桃视频第一区免费观看| 爱情岛论坛亚洲品质自拍视频网站| 欧美日韩国产高清视频| 亚洲精品v欧美精品v日韩精品| 国产精品系列在线观看| 亚洲伦理网站| 国产精美视频| av在线不卡一区| 欧美精品一区二区三区在线播放| 另类小说综合欧美亚洲| 国产91欧美| 日本全棵写真视频在线观看| 91日韩在线播放| 欧美xxxxx牲另类人与| 最新日韩一区| 欧美黄色一级片视频| 日本精品一区二区三区在线播放视频 | 欧美亚洲国产视频| 亚洲午夜久久久久久久久久久| 欧美欧美全黄| 成av人片在线观看www| 男人操女人免费软件| 国产精品欧美在线| 精品美女在线播放| 欧美国产一区在线| 国内自拍一区| 成人亚洲视频| 天堂аⅴ在线最新版在线| 欧美二级三级| 欧美黑人性生活视频| 香蕉乱码成人久久天堂爱免费| 国产一区二区三区的电影| 巨大黑人极品videos精品| 可以免费看污视频的网站| 国产在线精品一区二区三区| 亚洲人午夜精品| 一区二区三区欧美视频| 日韩在线a电影| 最近国产精品视频| 日本乱码一区二区三区不卡| av漫画网站| 在线播放 亚洲| 国产精品91视频| 亚洲国产精品久久| 亚洲另类在线一区| 精品系列免费在线观看| 精品久久久久中文字幕小说 | 一区二区不卡在线视频 午夜欧美不卡' | 人妻内射一区二区在线视频| 国产免费成人av| 在线观看日韩av| 欧美在线观看视频一区二区| 久久麻豆一区二区| 美女视频黄 久久|