PyQt - QPixmap 类



QPixmap 类提供了图像的屏幕外表示。它可以作为 QPaintDevice 对象使用,也可以加载到其他小部件中,通常是标签或按钮。

Qt API 还有另一个类似的类 QImage,它针对 I/O 和其他像素操作进行了优化。另一方面,Pixmap 针对在屏幕上显示进行了优化。两种格式可以相互转换。

可以读取到 QPixmap 对象中的图像文件类型如下:

BMP Windows 位图
GIF 图形交换格式(可选)
JPG 联合图像专家组
JPEG 联合图像专家组
PNG 便携式网络图形
PBM 便携式位图
PGM 便携式灰度图
PPM 便携式像素图
XBM X11 位图
XPM X11 像素图

以下方法可用于处理 QPixmap 对象:

序号 方法及描述
1

copy()

从 QRect 对象复制像素数据

2

fromImage()

将 QImage 对象转换为 QPixmap

3

grabWidget()

从给定的小部件创建像素图

4

grabWindow()

创建窗口中数据的像素图

5

load()

将图像文件加载为像素图

6

save()

将 QPixmap 对象保存为文件

7

toImage

将 QPixmap 转换为 QImage

QPixmap 最常见的用途是在标签/按钮上显示图像。

示例

以下示例演示了如何使用 setPixmap() 方法在 QLabel 上显示图像。完整代码如下:

import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *

def window():
   app = QApplication(sys.argv)
   win = QWidget()
   l1 = QLabel()
   l1.setPixmap(QPixmap("python.jpg"))
	
   vbox = QVBoxLayout()
   vbox.addWidget(l1)
   win.setLayout(vbox)
   win.setWindowTitle("QPixmap Demo")
   win.show()
   sys.exit(app.exec_())
	
if __name__ == '__main__':
   window()

以上代码产生以下输出:

QPixmap Class Output
广告