【PyQT5】自定义控件 显示网络图片

栏目: C++ · 发布时间: 7年前

内容简介:原理:使用

原理:使用 requests 获取图片,加载图片内容到控件中即可。

import sys  
import requests  
from PyQt5.QtWidgets import QApplication  
from PyQt5.QtWidgets import (QWidget,  QLabel, QVBoxLayout)  
from PyQt5.QtGui import  QPixmap

class Picture(QWidget):

    def __init__(self, parent=None, url=None):
        super().__init__(parent)
        self.url = url
        self.ui()

    def ui(self):
        # Get Pictures
        req = requests.get(self.url)
        photo = QPixmap()
        photo.loadFromData(req.content)

        label= QLabel()
        label.setPixmap(photo)

        layout =QVBoxLayout()
        layout.addWidget(label)
        self.setLayout(layout)


if __name__ == '__main__':  
    app = QApplication(sys.argv)
    url='https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=415293130,2419074865&fm=27&gp=0.jpg'

    pic = Picture(url=url)
    pic.show()
    sys.exit(app.exec_())

req = requests.get(self.url) 这一步会造成UI阻塞,建议使用twisted之类的库异步获取图片。

转载请注明出处http://www.zgljl2012.com/pyqt5-zi-ding-yi-kong-jian-xian-shi-wang-luo-tu-pian/

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Professional JavaScript for Web Developers

Professional JavaScript for Web Developers

Nicholas C. Zakas / Wrox / 2009-1-14 / USD 49.99

This eagerly anticipated update to the breakout book on JavaScript offers you an in-depth look at the numerous advances to the techniques and technology of the JavaScript language. You'll see why Java......一起来看看 《Professional JavaScript for Web Developers》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具