pyqt从URL设置QIcon()pixmap应用图标

img = QImage()
res= requests.get('https://xxx/logo.ico').content
img.loadFromData(res)
self.setWindowIcon(QIcon(QPixmap(img)))

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PyQt5 中,QIcon 是一个图标类,它可以用于设置窗口标题栏、工具栏、菜单栏等控件中的图标。如果要改变 QIcon 的颜色,可以使用 QPainter 对象的 setCompositionMode() 方法和 setBrush() 方法来实现。 具体步骤如下: 1. 创建一个 QIcon 对象,并设置它的图标。 2. 创建一个 QPainter 对象,并将 QIcon 对象传递给它。 3. 使用 setCompositionMode() 方法将 QPainter 对象的组合模式设置为 CompositionMode_SourceIn,这样就可以使用 QPainter 对象的 setBrush() 方法设置要绘制的颜色。 4. 调用 QPainter 对象的 drawPixmap() 方法将 QIcon 对象绘制到指定位置。 下面是一个示例代码: ```python from PyQt5.QtGui import QIcon, QPainter, QColor, QPixmap from PyQt5.QtCore import QSize from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QVBoxLayout class Example(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): label = QLabel(self) # 创建一个 QIcon 对象,并设置它的图标 icon = QIcon('icon.png') # 创建一个 QPainter 对象,并将 QIcon 对象传递给它 painter = QPainter() painter.begin(icon.pixmap(QSize(64, 64))) # 使用 setCompositionMode() 方法将 QPainter 对象的组合模式设置为 CompositionMode_SourceIn # 使用 setBrush() 方法设置要绘制的颜色 painter.setCompositionMode(QPainter.CompositionMode_SourceIn) painter.setBrush(QColor('blue')) # 调用 QPainter 对象的 drawPixmap() 方法将 QIcon 对象绘制到指定位置 painter.drawPixmap(icon.availableSizes()[0], icon.pixmap(QSize(64, 64))) painter.end() # 将 QIcon 对象设置为标签的图标 label.setPixmap(icon.pixmap(QSize(64, 64))) vbox = QVBoxLayout() vbox.addWidget(label) self.setLayout(vbox) self.setGeometry(300, 300, 250, 150) self.setWindowTitle('Icon') self.show() if __name__ == '__main__': app = QApplication([]) ex = Example() app.exec_() ``` 在上面的代码中,我们首先创建了一个 QIcon 对象,并将其设置为标签的图标。然后,我们创建一个 QPainter 对象,并将 QIcon 对象传递给它。接着,我们使用 setCompositionMode() 方法将 QPainter 对象的组合模式设置为 CompositionMode_SourceIn,这样就可以使用 QPainter 对象的 setBrush() 方法设置要绘制的颜色。最后,我们调用 QPainter 对象的 drawPixmap() 方法将 QIcon 对象绘制到指定位置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值