您的位置:首页 > 编程语言 > Qt开发

qt字体 QFontComboBox 字体下拉列表框

2015-06-10 20:16 387 查看
qt 怎么让程序自带字体,就是说在操作系统上没有的字体?

还有在QFontComboBox 里的字体太多,我只想显示一部分,而且还想添加一些字体。

求高手帮忙,谢谢


------解决方案--------------------

可以使用
int QFontDatabase::addApplicationFont ( const QString & fileName )


想要不显示 多余的字体,可以自己写一个QComboBox

而且QFontComboBox也是继承于这个类的

QFontComboBox这个组合框的内容是qt自动填的,不可以修改和删除。

如果不想只想显示字体名称,可以使用QComboBox自己填充字体到该组合框中。

使用QFontDatabase获取字体。

------解决方案--------------------

加载自定义字体

QString Widget::loadFontFamilyFromTTF()
{

static QString font;

static bool loaded = false;

if(!loaded)

{

loaded = true;

int loadedFontID = QFontDatabase::addApplicationFont(":/jinglei.FON");

QStringList loadedFontFamilies = QFontDatabase::applicationFontFamilies(loadedFontID);

if(!loadedFontFamilies.empty())

font = loadedFontFamilies.at(0);

}

return font;

}


另外使用该字体

QString selfFont = loadFontFamilyFromTTF();

QFont f(selfFont);

f.setPixelSize(38);

lb_Progress->setFont(f);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: