在程序运行时出现这个错误提示,经过逐步排查,发现是加载第三方字体的问题。
将加载第三方字体的路径改正确即可,程序如下:
//路径问题
int fontId = QFontDatabase::addApplicationFont("./res/fontawesome-webfont.ttf");//有时候是这个错误
if (fontId == -1) // -1为加载失败
{
qDebug() << "QFontDatabase load erroe!";
return;
}
QString fontName = QFontDatabase::applicationFontFamilies(fontId).at(0);
iconFont = QFont(fontName);
在加载失败是返回fontId为-1,加载成功则返回0。加个if判断有助于放置程序崩溃,且容易排查问题。