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

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

内容简介:原理:使用

原理:使用 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/

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

查看所有标签

猜你喜欢:

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

Head First HTML5 Programming(中文版)

Head First HTML5 Programming(中文版)

埃里克•弗里曼 (Eric Freeman)、伊丽莎白•罗布森 (Elisabeth Robson) / 中国电力出版社 / 2012-9 / 78.00元

《Head First HTML5 Programming(中文版)》内容简介:你可能想创建具有动态性、交互性、包含丰富数据而且互连的Web页面。先等一下,Web页面?为什么不用HTML5创建成熟的Web应用呢?另外,为什么不使用现代技术,像在移动设备上一样轻松地应用到桌面浏览器呢?当然,你肯定希望使用最新的HTML5技术来完成,比如地理定位、视频、2D绘制、Web存储、Web工作线程等,是不是?......一起来看看 《Head First HTML5 Programming(中文版)》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具