Qt的控件有些字符是不可显示的。比如说:这么一个东西 Qt在一般的机器上就没有办法显示。
原因可能是Qt的字体是加载的所在系统的字体库,所以当默认的字体库里面没有一些字符的时候Qt是不会给你显示该字符的。
解决的办法:
1. 自己创建一个字体文件,windows 下的字体文件一般的后缀为: .ttf .fon
2.将自己的字体文件放到程序的目录下,注: 为了可移动性不将字体文件放到windows下的fonts文件夹里。
3.将字体文件加进程序中。代码如下
QString fileName = “字体文件路径”;
int nIndex = QFontDatabase::addApplicationFont(fileName);
QFile f(fileName);
if (f.open(QIODevice::ReadOnly))
{
QByteArray data = f.readAll();
nIndex = QFontDatabase::addApplicationFontFromData(data);
}
4. 使用: 在需要使用的控件设置字体。比如:QFont font("字体名称"); QLineEdit->setFont();这样QLineEdit 就可以显示你所需要的字符了。。
注: 字体文件的制作自己可以在网上看下。