Qt引入图标字体包iconfont

客户端总是有各种换肤需求,为实现快速换肤,可引入图标字体包

1、使用阿里巴巴矢量图标库,网址https://www.iconfont.cn,切一张默认颜色的svg图标上传到我的项目,图标会生成一个唯一的unicode码0xe001,下载到本地并解压,得到iconfont.ttf字体包;

2、Qt中引入字体包并通过css设置样式,代码如下:

//引入图形字体
int fontId = QFontDatabase::addApplicationFont("./iconfont.ttf"); //加入字体,并获取字体ID
QString fontName = QFontDatabase::applicationFontFamilies(fontId).at(0); //获取字体名称
QFont iconFont = QFont(fontName);
iconFont.setPixelSize(128); //设置字体大小
ui->pushButton->setFont(iconFont); //设置QPushButton的字体
ui->pushButton->setText(QChar(0xe001)); //设置QPushButton的文体
//设置QPushButton的样式
ui->pushButton->setStyleSheet(
//默认样式
"QPushButton{"
"color:red;"
"}"
//鼠标悬停样式
"QPushButton:hover{"
"color:blue;"
"}"
//鼠标按下样式
"QPushButton:pressed{"
"color:orange;"
"}");

3、此方法换肤无需重复切图,同样的图标只要修改样式文件的色值即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值