2015-06-20 21:04
⁄ 工业·编程
⁄ 共 2442字
文章目录
Qt国际化的一般步骤
Qt国际化的一般步骤
运行 lupdate,从应用程序的代码中提取所有界面上的可见字符。
这些可见字符必须被 tr() 、QCoreApplication::translate()、Qt_TR_NOOP()、Qt_TRANSLATE_NOOP()等来包裹字符串,具体这些函数或者宏是什么功能,我们后面细说。
使用 Qt Linguist 翻译应用程序。
运行 lrelease,生成二进制的 .qm 文件,应用程序可以使...
Qt, 字符集阅读全文
2015-06-03 07:56
⁄ 工业·编程
⁄ 共 2008字
Qt5假定的执行字符集是UTF8,不再允许用户擅自改动。这样一来,Qt4中setCodecXXX的各种副作用不再存在,而且中文问题更为简单。
QString s1 = "汉语";
QString s2("漢語");
QString s3 = tr("中文")
QString s4 = QStringLiteral("中文");//只要字符串不需要翻译,请关注这个
QString s5 = QString::fromWCharArray(L"中文");
QString s6 = u8"中文";//C++11...
QString, 字符集阅读全文
2015-06-02 07:53
⁄ 工业·编程
⁄ 共 2692字
长期以来,很多人都清楚,一旦C++源码中直接使用了中文,这样的源码想要跨平台(I18N)会非常困难。
随着:
Windows下:MSVC2010成为主流
Linux下:GCC升级到4.6
C++中的中文问题 才算有了一个比较优雅的、跨平台的Workaround。
相关阅读
----QString 乱谈(1)
(本文讨论编译器范围:GCC4.6+, MSVC2010sp1+ 。本文属于QString系列,但暂不涉及QString)
C++ 中文问题
要在C++中正确使用中文,必须要了解下...
QString, 字符集阅读全文
2015-06-01 07:46
⁄ 工业·编程
⁄ 共 2106字
一个月前尝试写了一篇关于QStringLiteral,存盘时MoinMoin罢工了。吸取一点经验,还是写成短篇吧
可是,可是,QString不就是简简单单一个字符串么?能有什么可谈的。真的么...
(本文范围:Qt4)
字符串比较
如果翻看Qt的源码,或者Qt的(正规一点)第三方库,我们很少看到这种代码:
//QString myString
if (myString == "dbzhang800") {
}
取而代之的是
if (myString == QLatin1String("dbzhang800"...
QString, 字符集阅读全文
2015-05-30 07:42
⁄ 工业·编程
⁄ 共 1104字
在Qt4中,国内很多新手都喜欢——不分青红皂白地使用如下3行代码
QTextCodec::setCodecForTr(...)
QTextCodec::setCodecForCStrings(...)
QTextCodec::setCodecForLocale(...)
让人少多有些无奈。。。
相关阅读
----Qt国际化(源码含中文时)的点滴分析
症结?
在国内,之所以用很多人用这3行代码,是因为他们在源代码的const char*这种窄字符串中使用了中文。
然后,发现。不对啊,咋全是乱码呢?于是上...
Qt, 字符集阅读全文
2015-05-29 09:29
⁄ 工业·编程
⁄ 共 3523字
注意:本文不介绍如何使用Qt的国际化、本地化支持。本文针对的是偏底层的、Manual和其他资料中很少涉及的东西。所以,继续之前,请先确保:你已经对如何使用Qt的国际化比较熟悉了。
本文针对的是 tr("我是中文") 这种情况。
例子
首先,个人比较抵制源码中使用中文(当然也包括用tr扩住中文了)。但是如果非要用,也不是不可以。之前也提到了这个问题。
废话少说,看个例子:
#include <QApplica...
Qt, 字符集阅读全文
2015-03-04 06:50
⁄ 工业·编程
⁄ 共 8002字
真空管时代的计算机尽管已经步入了现代计算机的范畴,但其体积之大、能耗之高、故障之多、价格之贵大大制约了它的普及应用。直到1947年,由Bell实验室的William B. Shockley、 John Bardeen和Walter H. Brattain.发明了晶体管,开辟了电子时代新纪元,电子计算机也找到了腾飞的起点,一发而不可收……
1. 二进制:bit
晶体管是一种微型电子开关。它们是计算机的"大脑"--微处理器的基本组...
字符集, 软件开发阅读全文
2013-07-29 06:38
⁄ 工业·编程
⁄ 共 213字
俄文的编码有西里尔(DOS),西里尔(ISO),西里尔(window-1251),西里尔(KOI8-U),这几种编码不像gb2312,gbk与gb18030那种向上兼容,它们都是以一个字节进行编码的相互不兼容,常用的是window-1251,它兼容ASSCII。
gb2312字符集除简体中文以外还包容了一些其它的字符集,当然也包含了俄文,俄文所在的区是A7。所以用gb2312编码的文件可以同时有中,俄,英等字符。
gb2312, UI界面, 字符集阅读全文