QT 中tr()函数的使用

tr()

 函数tr()的原型是QObject::tr(),被它处理的字符串可以使用工具提取出来翻译成其他语言,也就是国际化使用。
 QString text = QObject::tr("hello");
 如果你为这个程序提供了中文翻译包(其中hello被翻译成中文"你好"),那么text的内容将是中文"你好";如果你为程序提供且使用日文翻译包,那么text的内容将是日文。

中文字符乱码

QString 采用的unicode,在中文支持上不存在任何问题
"我是中文" 这是传统的 const char * 的窄字符串
当将窄字符串赋值到QString时,我们需要告诉它我们的窄串采用的何种编码(gbk?、utf-8?)
究竟何种编码主要取决于我们的源代码文件的编码(windows上一般是gbk,其他平台一般utf-8)
可使用如下两行代码指定其编码格式:
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
QT creater 设置:工具->选项->文本编辑器->文件编码:选择utf8。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值