一、前言
通过qt的简单代码实现更改图标颜色,颜色的单一修改填充。
二、代码
实现代码:
/*
* QIcon icon 待修改的图标
* QColor color 需修改的颜色
* 返回修改后的QIcon
*/
QIcon mainwindow::setIconColor(QIcon icon, QColor color)
{QPixmap pixmap = icon.pixmap(QSize(64,64));QPainter painter(&pixmap);painter.setCompositionMode(QPainter::CompositionMode_SourceIn);painter.fillRect(pixmap.rect(), color);QIcon colorIcon = QIcon(pixmap);return colorIcon;
}
使用示例:
//设置按钮图标
ui.toolButton->setIcon(QIcon(":/pic/set.png"));//设置按钮修改颜色后的图标
ui.toolButton->setIcon(setIconColor(ui.toolButton->icon(), QColor(0, 176, 240)));
三、效果
修改颜色前:
修改颜色后: