QT

来源:互联网 发布:染色体图像分析软件 编辑:程序博客网 时间:2024/05/16 19:05

在qt5中,编写LineEdit等使用setText()的时候,会出现乱码情况,是由于编码问题引起的。

在qt5中的解决方法很简单,就是通过增加

    QString::fromLocal8Bit("中文输入")

如:

    aLineEdit->setText(QString::fromLocal8Bit("你好"));

在qt4中需要增加如下内容

#include <QTextCodec>main(){    ...    QTextCodec::setCodecForLocale(QTextCodec::codecForName("gb2312"));    QTextCodec::setCodecForCString(QTextCodec::codecForName("gb2312"));    QTextCodec::setCodecForTr(QTextCodec::codecForName("gb2312"));    ...}