QT美化使用字体图标

准备字体图标资源

fontawesome下载地址
解压得到文件如下
在这里插入图片描述

建立QT工程

使用qtcreator创建mainwindow工程

工程增加字体图标资源文件

.pro文件中增加内容如下:

RESOURCES += \
    resource/resource.qrc

那么在工程目录下建立

#建立resource目录
mkdir -p resource
mkdir -p resource/ico_ttf
#建立qrc文件
touch resource/resource.qrc

编辑resource.qrc文件

<RCC>
    <qresource prefix="/resource_file"/>
    <qresource prefix="/">
        <file>ico_ttf/fontawesome-webfont.ttf</file>
    </qresource>
</RCC>

从下载的fontawesome解压目录中复制fontawesome-webfont.ttfico_ttf目录下

创建一个按钮控件

打开UI设计工具,拖一个PushButton到界面

在mainwindow.cpp中实例化中

/*装载图形字体*/
QFont iconFont;
QFontDatabase fontDb;
if(!fontDb.families().contains("FontAwesome"))
{
    
    
    int fontId = fontDb.addApplicationFont(":/ico_ttf/fontawesome-webfont.ttf");
    QStringList fontName = fontDb.applicationFontFamilies(fontId);
    if(fontName.count() == 0)
    {
    
    
        qDebug() << "load fontawesome-webfont.ttf error";
    }
}
if(fontDb.families().contains("FontAwesome"))
{
    
    
    iconFont = QFont("FontAwesome");
    iconFont.setHintingPreference(QFont::PreferNoHinting);
}
iconFont.setPixelSize(14);

设置按钮字体
找到想要设置的字体
在这里插入图片描述
复制名称fa-file-textfont-awesome.css中查找
在这里插入图片描述

QString ico_text = QString("%1%2").arg(QChar(0xf15c)).arg(" 文件");
ui->pushButton->setFont(iconFont);
ui->pushButton->setText(ico_text);

运行效果

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42892101/article/details/111912016
今日推荐