歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Ubuntu下QT顯示中文亂碼問題

Ubuntu下QT顯示中文亂碼問題

日期:2017/2/28 16:31:53   编辑:Linux教程

Ubuntu下QT顯示中文亂碼問題

貼代碼 先
#include <QtGui/QApplication>
#include <QtGui/QWidget>
#include <QtGui/QLabel>
#include <QtCore/QTextCodec>
#include <QtGui/QPushButton>
#include <QtGui/QVBoxLayout>
int main(int argc, char* argv[])
{
QApplication app(argc, argv);

QWidget* pWidget = new QWidget;
QLabel label(pWidget);
QTextCodec::setCodecForTr(QTextCodec::codecForName("GB18030"));
label.setText(QObject::tr("同一個世界,同一個夢想"));
QPushButton* btn = new QPushButton(QObject::tr("關閉"), pWidget);
QVBoxLayout* layout = new QVBoxLayout;
layout->addWidget(&label);
layout->addWidget(btn);
pWidget->setLayout(layout);
QObject::connect(btn, SIGNAL(clicked()), pWidget, SLOT(close()));
pWidget->show();
return app.exec();
}

上面運行亂碼
解決辦法:
第一 將文件保存成utf8編碼格式 如果是用creator ,則選擇edit菜單的最後一個子菜單
第二 GB18030 用utf8 替換

Copyright © Linux教程網 All Rights Reserved