Qt 中文显示 QMessageBox按钮中文显示

1,QT中如何显示中文呢?

QTextCodec*pCodec=QTextCodec::codecForName("System");//获取系统字体编码

QTextCodec::setCodecForLocale(pCodec);

QTextCodec::setCodecForCStrings(pCodec);

QTextCodec::setCodecForTr(pCodec);

如果你的操作系统当前是中文环境的话,就可以显示中文。

 

2,通过第1步的操作就可以在文本中显示中文了,但是还不能在内置的QMessageBox按钮上面显示中文。

该怎么办呢?

(1)从QT安装目录下面将文件“qt_zh_CN.qm”复制一份到你的项目目录下。

例如,我是从“D:\QtSDK\Desktop\Qt\4.7.3\msvc2008\translations”目录下复制的“qt_zh_CN.qm”文件。

你的项目目录指你项目的.pro文件所在的目录。

(2)在项目目录中新建一个文本文件,输入如下内容:

<RCC>

    <qresource prefix="/">

        <file>qt_zh_CN.qm</file>

    </qresource>

</RCC>

保存后,将该文本文件的后缀名由txt改为qrc,表明这是资源文件。

(3)在Qt Creator中将上述文件加到你的项目中。

(4)修改代码如下,表示要加载相应的资源文件。

    QTranslator oTranslator;

    oTranslator.load(":/qt_zh_CN"); // 注意此处字符串以“:/”开头,后接的字符串是刚才复制的qm文件的名字

    QApplication oApp(argc, argv);

    oApp.installTranslator(&oTranslator);

(5)重新编译、运行程序即可。

============================================

运行效果如下:

 

 

后记:当时笔者希望QMessageBox的按钮能中文显示,在网上搜索发现有许多同学有相同的问题,然而网上给出的答案却要么是本文叙述的第1个问题的答案,要么就是没有说清楚。所以,专门在这里贴出来,希望能帮到大家。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值