QLabel

Q L a b e l QLabel QLabel

https://zhuanlan.zhihu.com/p/31810054

https://blog.csdn.net/chengmo123/article/details/97563263

图像类:QPixmap,QImage,QPicture,QBitmap

  • QPixmap是专门为绘图而设计的,在绘制图片时需要使用QPixmap
  • QImage提供了一个与硬件无关的图像表示函数,可以用于图片的像素级访问
  • QPicture是一个绘图设备类,它继承自QPainter类,可以使用QPainter的begin()函数在QPicture上绘图,使用end()函数结束绘图,使用QPicture的save()函数将Qpainter所使用过的绘图指令保存到文件中
  • QBitmap是一个继承QPixmap的简单类,它提供了1bit深度的二值图像的类,QBitmap提供的单色图像,可以用来制作游标(QCursor)或者笔刷(QBrush)

QImage

img = cv2.imread(img_path)
showImage = QImage(img.data, img.shape[1], img.shape[0],
             QImage.Format_RGB888)  # 把读取到的图片数据变成QImage形式
# 往显示视频的Label里 显示QImage
label.setPixmap(QPixmap.fromImage(showImage))

QImage的32、24、8位图
Format_RGB32 ,Format_RGB888,Format_Indexed8

QImage(img2[:],img2.shape[1], img2.shape[0],img2.shape[1] * 3, QtGui.QImage.Format_RGB888)

注意:QImage(uchar * data, int width, int height, int bytesPerLine, Format format) 
中的bytesPerLine 参数不能省略,负责造成Qimage数据错误,显示图片不正常,此参数设置为image的width*image.channels

QPixmap

        # 显示图片
        self.img_show.setPixmap(QPixmap(file_path))
        self.img_show.setScaledContents(True)

QPicture

label = QLabel()
label.setStyleSheet()
label.move()
label.resize()
label.adjustSize()

对齐

alignment
setAligment(alignment)

缩进与边距

setIndent(int)
setMargin(int)

文本格式

解析富文本

setTextFormat()
textFormat

其他控件绑定

buddy()  ---> QWidget
setBuddy(QWidget buddy()

内容缩放(图片)

  • hasScaledContents0 -> bool
  • setScaledContents(bool)
  • 缩放内容,适应控件大小。针对于图片有效
self.img_show.setPixmap(QPixmap(file_path))
self.img_show.setScaledContents(True)
#label.adjustSize() # 窗口适应图片
label.setScaledContents(True) # 图片适应QLabel

文本交互标志

label.setTextInteractionFlags(Qt.TextSelectableByMouse | Qt.TextSelectableByKeyboard)

链接和换行

label = QLabel("<a href='https://www.baidu.com'>百度</a>", self)

label.setOpenExternalLinks(True)

内容操作

  • 文本字符串:label.setText()
  • 数值数据:label.setNum()
  • 图形图像:label.setPicture() 、label.setPixmap()
  • 动图:label.setMovie()
  • 清空:label.clear()

在这里插入图片描述
在这里插入图片描述

信号

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值