Qt与国际化
原文地址:Qt与国际化
Qt国际化可能是我最喜的Qt功能。
国际化是多语言切换支持。
Qt实现国际化需要满足两个条件
1.所有Qstring字符串用tr()修饰。
2.导入翻译文件。
改造上一篇文章线程的例子,添加国际化支持:
http://www.cnblogs.com/hebaichuanyeah/p/5618781.html
把所有字符串全部用tr()修饰,增加一个语言切换下拉选项。
实现多语言支持,需要导入翻译文件,如何生成翻译文件?
1.在Qt工程文件中加入以下代码,代表生成两个翻译文件。
1 2 |
|
利用lupdate命令,或者QtCreator生成.ts的XML文件。
2.翻译修改.ts xml文件。修改格式如下:
3.运行lrelease命令生成二进制翻译文件.qm,并在程序中导入生成的.qm文件,即可自动翻译。
运行效果:
中文界面
英文界面
thread.h
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
thread.cpp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
|
mainwindow.cpp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 |
|
mainwindow.h
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
|
main.cpp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|