FontAwesome可以很容易地将可编辑的图标添加到HTML中:
QPushButton *qB = new QPushButton("TXT");
qB -> setProperty("class", "fa fa-camera-retro");
我尝试将 FontAwesome 图标添加到Qt小部件,但它没有显示:
{{1}}
我怎样才能使它与Qt小部件一起使用?
答案 0 :(得分:12)
Qt不能那样工作。 您需要创建一个qrc文件并将FontAwesome捆绑到您的项目中,如下所示:
<RCC>
<qresource prefix="/">
<file alias="FontAwesome.otf">FontAwesome.otf</file>
</qresource>
</RCC>
然后将其包含在.pro文件中:
RESOURCES += resources.qrc
然后加载并使用它,就像这样,提供你想要显示的图标的unicode字符:
if (QFontDatabase::addApplicationFont(":/FontAwesome.otf") < 0)
qWarning() << "FontAwesome cannot be loaded !";
QFont font;
font.setFamily("FontAwesome");
font.setPixelSize(32);
ui->pushButton->setFont(font);
ui->pushButton->setText("\uf083");
在您的情况下,相机图标代码为indicated here
结果:
答案 1 :(得分:0)
我希望对Qt5和FontAwesome 5.x的最新版本执行相同的操作。经过研究,我在GitHub中找到了一个非常简单的类,用于在Qt 5和Qt 6项目中使用QWidget使用Font Icon。此类为助手提供了使用很棒的Font(v4.7,v5.15和v6.0)和Google Material Icon(v4)的帮助。
代码很小,并提供了在QPushButton,QToolButton等中显示图标所需的所有功能。
在这里,GitHub链接:https://github.com/philvl/ZFontIcon。