MCPcopy
hub / github.com/PyQt5/PyQt / __init__

Method __init__

QListView/ImageView.py:29–52  ·  view source on GitHub ↗
(self, *args, **kwargs)

Source from the content-addressed store, hash-verified

27 """图片查看控件"""
28
29 def __init__(self, *args, **kwargs):
30 image = kwargs.pop('image', None)
31 background = kwargs.pop('background', None)
32 super(BigImageView, self).__init__(*args, **kwargs)
33 self.setCursor(Qt.OpenHandCursor)
34 self.setBackground(background)
35 self.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
36 self.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
37 self.setRenderHints(QPainter.Antialiasing | QPainter.HighQualityAntialiasing |
38 QPainter.SmoothPixmapTransform)
39 self.setCacheMode(self.CacheBackground)
40 self.setViewportUpdateMode(self.SmartViewportUpdate)
41 self._item = QGraphicsPixmapItem() # 放置图像
42 self._item.setFlags(QGraphicsPixmapItem.ItemIsFocusable |
43 QGraphicsPixmapItem.ItemIsMovable)
44 self._scene = QGraphicsScene(self) # 场景
45 self.setScene(self._scene)
46 self._scene.addItem(self._item)
47 rect = QApplication.instance().desktop().availableGeometry()
48 self.resize(int(rect.width() * 2 / 3), int(rect.height() * 2 / 3))
49
50 self.pixmap = None
51 self._delta = 0.1 # 缩放
52 self.setPixmap(image)
53
54 def setBackground(self, color):
55 """设置背景颜色

Callers

nothing calls this directly

Calls 7

setBackgroundMethod · 0.95
setPixmapMethod · 0.95
__init__Method · 0.45
addItemMethod · 0.45
resizeMethod · 0.45
widthMethod · 0.45
heightMethod · 0.45

Tested by

no test coverage detected