QT学习笔记----解决QT无法显示汉字问题
2016-04-24 17:09
701 查看
[cpp] view
plain copy
print?
ui->label->setText(QString::fromUtf8("按钮1被按下!"));
方法一:
1.下载文泉驿正黑字体qpf字体库
在http://download.csdn.net/source/3528609可以找到免费下载
2.把下载好的字体库解压后的qpf文件放入lib/fonts中(qtX86和arm版本以及移植的文件系统中都放入此子体)
编译运行的时候:在qtcreator中在Run Settings——〉Edit run configuration:右侧单击Show Details按钮,在打开的下拉列表中Arguments:文本框中添加参数“-qws -font wenquanyi”。
或者在终端中运行:例如:./hello -qws -font wenquanyi
这样就可以显示中文了
如果不想输入后面的参数可以把lib/fonts中的其他字体全部删除,只保留泉驿正黑字体的qpf字体库。这样只需要运行./hello-qws 即可 不过这样以来就用不了其他字体了。
方法二:
主函数下添加:
[cpp] view
plain copy
print?
#include <QtGui/QApplication>
#include "mainwindow.h"
#include "QTextCodec"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
// 以下部分解决中文乱码
QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));
// 以上部分解决中文乱码
return a.exec();
}
需要中文的地方:
[cpp] view
plain copy
print?
ui->label->setText(QString::fromUtf8("按钮1被按下!"));
在arm中运行时:
[cpp] view
plain copy
print?
[root@Snail /]# ./snail/4_button -qws -font unifont
plain copy
print?
ui->label->setText(QString::fromUtf8("按钮1被按下!"));
方法一:
1.下载文泉驿正黑字体qpf字体库
在http://download.csdn.net/source/3528609可以找到免费下载
2.把下载好的字体库解压后的qpf文件放入lib/fonts中(qtX86和arm版本以及移植的文件系统中都放入此子体)
编译运行的时候:在qtcreator中在Run Settings——〉Edit run configuration:右侧单击Show Details按钮,在打开的下拉列表中Arguments:文本框中添加参数“-qws -font wenquanyi”。
或者在终端中运行:例如:./hello -qws -font wenquanyi
这样就可以显示中文了
如果不想输入后面的参数可以把lib/fonts中的其他字体全部删除,只保留泉驿正黑字体的qpf字体库。这样只需要运行./hello-qws 即可 不过这样以来就用不了其他字体了。
方法二:
主函数下添加:
[cpp] view
plain copy
print?
#include <QtGui/QApplication>
#include "mainwindow.h"
#include "QTextCodec"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
// 以下部分解决中文乱码
QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("GB2312"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"));
// 以上部分解决中文乱码
return a.exec();
}
需要中文的地方:
[cpp] view
plain copy
print?
ui->label->setText(QString::fromUtf8("按钮1被按下!"));
在arm中运行时:
[cpp] view
plain copy
print?
[root@Snail /]# ./snail/4_button -qws -font unifont
相关文章推荐
- 在 Qt 中搭建 qwt (超详版)
- Qt webEngine的前世今生
- Qt Creator和MinGW编译OpenCV
- QT学习之路(一)
- Qt4.8下应用OpenCV2.4.4搭建环境详细步骤(win7系统)
- qt 控件属性修改
- QT 工程文件元素配置项 Creating Project Files
- Qt QML
- qt类型转换
- Qt Creator Plug-in Gallery
- Qt基础(一)----按钮,文本框,窗口,布局,选项框等等
- qt中的OpenGL代码框架
- QT网络编程笔记
- qt中打开摄像头
- Qt之图形(绘制文本)
- Qt之图形(绘制文本)
- 浅谈QTableView和QTableWidget数据表格显示方式
- win10+qt5.6.0+qtcreator3.6.1+mingw4.9.2+opencv4.8.12环境安装
- Qt开发环境搭建
- qthread 使用 signal 方法通信