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

Method paintEvent

QProgressBar/MetroCircleProgress.py:96–118  ·  view source on GitHub ↗
(self, event)

Source from the content-addressed store, hash-verified

94 self.update()
95
96 def paintEvent(self, event):
97 super(MetroCircleProgress, self).paintEvent(event)
98 painter = QPainter(self)
99 painter.setRenderHint(QPainter.Antialiasing)
100 painter.fillRect(self.rect(), self.BackgroundColor)
101 painter.setPen(Qt.NoPen)
102
103 for item, _ in self._items:
104 painter.save()
105 color = self.Color.toRgb()
106 color.setAlphaF(item.opacity)
107 painter.setBrush(color)
108 # 5<= radius <=10
109 radius = qBound(self.Radius, self.Radius / 200 *
110 self.height(), 2 * self.Radius)
111 diameter = 2 * radius
112 painter.drawRoundedRect(
113 QRectF(
114 item.x / 100 * self.width() - diameter,
115 (self.height() - radius) / 2,
116 diameter, diameter
117 ), radius, radius)
118 painter.restore()
119
120 def _initAnimations(self):
121 for index in range(5): # 5个小圆

Callers

nothing calls this directly

Calls 6

qBoundFunction · 0.85
setPenMethod · 0.80
setBrushMethod · 0.80
restoreMethod · 0.80
heightMethod · 0.45
widthMethod · 0.45

Tested by

no test coverage detected