def paintEvent(self, event): # pylint: disable=unused-argument
painter = QPainter(self)
painter.setPen(Qt.black)
widgets = {w.get_id(): (self.top_point(w.geometry()), self.bottom_point(w.geometry()))
for w in self.children() if isinstance(w, GoalWidget)}
for widget_id, points in widgets.items():
line_start = points[0]
for parent_widget in self.dependencies[widget_id]:
line_end = widgets[parent_widget][1]
painter.drawLine(line_start, line_end)
python类black()的实例源码
def paintEvent(self, paint_event):
# pylint: disable=unused-argument
painter = QPainter(self)
painter.setRenderHint(painter.Antialiasing)
painter.setPen(QColor(Qt.black))
for upper, lower in self.lines:
x1, y1 = self._lower_bound(upper)
x2, y2 = self._upper_bound(lower)
painter.drawLine(x1, y1, x2, y2)
def __init__(self):
super(GraphicsPathItem, self).__init__()
pen = QPen()
pen.setColor(Qt.black)
pen.setWidth(10)
self.setPen(pen)
def setGlyphColor(self, color):
"""
Sets the QColor_ *color* with which glyphs are rendered.
The default is Qt.black.
.. _QColor: http://doc.qt.io/qt-5/qcolor.html
"""
self._glyphColor = color
self.update()
def paintEvent(self, event):
painter = QPainter(self)
painter.setRenderHint(QPainter.Antialiasing)
for index in range(self._stick_count):
if self.item_index >= index +1:
painter.setPen(self.active_color)
painter.setBrush(self.active_color)
painter.drawRect(56+(index*100), 24, 76, 6)
else:
painter.setPen(self.passive_color)
painter.setBrush(self.passive_color)
painter.drawRect(56+(index*100), 24, 76, 6)
for index in range(self._item_count):
if self.item_index >= index:
painter.setPen(self.active_color)
painter.setBrush(self.active_color)
painter.drawEllipse(32 + (index * 100), 16, 24, 24)
painter.setPen(Qt.black)
painter.drawText(32 + (index * 100), 16, 24, 84, Qt.AlignCenter | Qt.TextWordWrap | Qt.TextDontClip,
self.parent.widget(index).windowTitle())
else:
painter.setPen(self.passive_color)
painter.setBrush(self.passive_color)
painter.drawEllipse(32+(index*100), 16, 24, 24)
painter.setPen(Qt.black)
painter.drawText(32+(index*100), 16, 24, 84, Qt.AlignCenter | Qt.TextWordWrap | Qt.TextDontClip,
self.parent.widget(index).windowTitle())
def paint(self, painter, option, widget):
painter.setBrush(Qt.gray)
painter.drawRect(-20, -58, 40, 2) # Front axel
painter.drawRect(-20, 7, 40, 2) # Rear axel
painter.setBrush(self.color)
painter.drawRect(-25, -79, 50, 10) # Front wing
painter.drawEllipse(-25, -48, 50, 20) # Side pods
painter.drawRect(-25, -38, 50, 35) # Side pods
painter.drawRect(-5, 9, 10, 10) # Back pod
painter.drawEllipse(-10, -81, 20, 100) # Main body
painter.drawRect(-17, 19, 34, 15) # Rear wing
painter.setBrush(Qt.black)
painter.drawPie(-5, -51, 10, 15, 0, 180 * 16)
painter.drawRect(-5, -44, 10, 10) # Cockpit
painter.save()
painter.translate(-20, -58)
painter.rotate(self.wheelsAngle)
painter.drawRect(-10, -7, 10, 15) # Front left
painter.restore()
painter.save()
painter.translate(20, -58)
painter.rotate(self.wheelsAngle)
painter.drawRect(0, -7, 10, 15) # Front right
painter.restore()
painter.drawRect(-30, 0, 12, 17) # Rear left
painter.drawRect(19, 0, 12, 17) # Rear right
def brushChanged(self):
style = Qt.BrushStyle(self.brushStyleComboBox.itemData(
self.brushStyleComboBox.currentIndex(), IdRole))
if style == Qt.LinearGradientPattern:
linearGradient = QLinearGradient(0, 0, 100, 100)
linearGradient.setColorAt(0.0, Qt.white)
linearGradient.setColorAt(0.2, Qt.green)
linearGradient.setColorAt(1.0, Qt.black)
self.renderArea.setBrush(QBrush(linearGradient))
elif style == Qt.RadialGradientPattern:
radialGradient = QRadialGradient(50, 50, 50, 70, 70)
radialGradient.setColorAt(0.0, Qt.white)
radialGradient.setColorAt(0.2, Qt.green)
radialGradient.setColorAt(1.0, Qt.black)
self.renderArea.setBrush(QBrush(radialGradient))
elif style == Qt.ConicalGradientPattern:
conicalGradient = QConicalGradient(50, 50, 150)
conicalGradient.setColorAt(0.0, Qt.white)
conicalGradient.setColorAt(0.2, Qt.green)
conicalGradient.setColorAt(1.0, Qt.black)
self.renderArea.setBrush(QBrush(conicalGradient))
elif style == Qt.TexturePattern:
self.renderArea.setBrush(QBrush(QPixmap(':/images/brick.png')))
else:
self.renderArea.setBrush(QBrush(Qt.green, style))
def __init__(self, parent=None):
super(GLWidget, self).__init__(parent)
self.clearColor = QColor(Qt.black)
self.xRot = 0
self.yRot = 0
self.zRot = 0
self.program = None
self.lastPos = QPoint()
def paintEvent(self, event):
painter = QPainter(self)
painter.fillRect(event.rect(), Qt.white)
painter.setFont(self.displayFont)
redrawRect = event.rect()
beginRow = redrawRect.top() // self.squareSize
endRow = redrawRect.bottom() // self.squareSize
beginColumn = redrawRect.left() // self.squareSize
endColumn = redrawRect.right() // self.squareSize
painter.setPen(Qt.gray)
for row in range(beginRow, endRow + 1):
for column in range(beginColumn, endColumn + 1):
painter.drawRect(column * self.squareSize,
row * self.squareSize, self.squareSize,
self.squareSize)
fontMetrics = QFontMetrics(self.displayFont)
painter.setPen(Qt.black)
for row in range(beginRow, endRow + 1):
for column in range(beginColumn, endColumn + 1):
key = row * self.columns + column
painter.setClipRect(column * self.squareSize,
row * self.squareSize, self.squareSize,
self.squareSize)
if key == self.lastKey:
painter.fillRect(column * self.squareSize + 1,
row * self.squareSize + 1, self.squareSize,
self.squareSize, Qt.red)
key_ch = self._chr(key)
painter.drawText(column * self.squareSize + (self.squareSize / 2) - fontMetrics.width(key_ch) / 2,
row * self.squareSize + 4 + fontMetrics.ascent(),
key_ch)
def createColorComboBox(self):
comboBox = QComboBox()
comboBox.addItem("Red", Qt.red)
comboBox.addItem("Blue", Qt.blue)
comboBox.addItem("Black", Qt.black)
comboBox.addItem("Magenta", Qt.magenta)
return comboBox
def drawBackgroundToPixmap(self):
r = self.scene.sceneRect()
self.background = QPixmap(qRound(r.width()), qRound(r.height()))
self.background.fill(Qt.black)
painter = QPainter(self.background)
bg = QImage(self.imagesDir + '/demobg.png')
painter.drawImage(0, 0, bg)
def paint(self, painter, option, widget):
painter.setBrush(Qt.gray)
painter.drawRect(-20, -58, 40, 2) # Front axel
painter.drawRect(-20, 7, 40, 2) # Rear axel
painter.setBrush(self.color)
painter.drawRect(-25, -79, 50, 10) # Front wing
painter.drawEllipse(-25, -48, 50, 20) # Side pods
painter.drawRect(-25, -38, 50, 35) # Side pods
painter.drawRect(-5, 9, 10, 10) # Back pod
painter.drawEllipse(-10, -81, 20, 100) # Main body
painter.drawRect(-17, 19, 34, 15) # Rear wing
painter.setBrush(Qt.black)
painter.drawPie(-5, -51, 10, 15, 0, 180 * 16)
painter.drawRect(-5, -44, 10, 10) # Cockpit
painter.save()
painter.translate(-20, -58)
painter.rotate(self.wheelsAngle)
painter.drawRect(-10, -7, 10, 15) # Front left
painter.restore()
painter.save()
painter.translate(20, -58)
painter.rotate(self.wheelsAngle)
painter.drawRect(0, -7, 10, 15) # Front right
painter.restore()
painter.drawRect(-30, 0, 12, 17) # Rear left
painter.drawRect(19, 0, 12, 17) # Rear right
def brushChanged(self):
style = Qt.BrushStyle(self.brushStyleComboBox.itemData(
self.brushStyleComboBox.currentIndex(), IdRole))
if style == Qt.LinearGradientPattern:
linearGradient = QLinearGradient(0, 0, 100, 100)
linearGradient.setColorAt(0.0, Qt.white)
linearGradient.setColorAt(0.2, Qt.green)
linearGradient.setColorAt(1.0, Qt.black)
self.renderArea.setBrush(QBrush(linearGradient))
elif style == Qt.RadialGradientPattern:
radialGradient = QRadialGradient(50, 50, 50, 70, 70)
radialGradient.setColorAt(0.0, Qt.white)
radialGradient.setColorAt(0.2, Qt.green)
radialGradient.setColorAt(1.0, Qt.black)
self.renderArea.setBrush(QBrush(radialGradient))
elif style == Qt.ConicalGradientPattern:
conicalGradient = QConicalGradient(50, 50, 150)
conicalGradient.setColorAt(0.0, Qt.white)
conicalGradient.setColorAt(0.2, Qt.green)
conicalGradient.setColorAt(1.0, Qt.black)
self.renderArea.setBrush(QBrush(conicalGradient))
elif style == Qt.TexturePattern:
self.renderArea.setBrush(QBrush(QPixmap(':/images/brick.png')))
else:
self.renderArea.setBrush(QBrush(Qt.green, style))
def __init__(self, parent=None):
super(GLWidget, self).__init__(parent)
self.clearColor = QColor(Qt.black)
self.xRot = 0
self.yRot = 0
self.zRot = 0
self.program = None
self.lastPos = QPoint()
def paintEvent(self, event):
painter = QPainter(self)
painter.fillRect(event.rect(), Qt.white)
painter.setFont(self.displayFont)
redrawRect = event.rect()
beginRow = redrawRect.top() // self.squareSize
endRow = redrawRect.bottom() // self.squareSize
beginColumn = redrawRect.left() // self.squareSize
endColumn = redrawRect.right() // self.squareSize
painter.setPen(Qt.gray)
for row in range(beginRow, endRow + 1):
for column in range(beginColumn, endColumn + 1):
painter.drawRect(column * self.squareSize,
row * self.squareSize, self.squareSize,
self.squareSize)
fontMetrics = QFontMetrics(self.displayFont)
painter.setPen(Qt.black)
for row in range(beginRow, endRow + 1):
for column in range(beginColumn, endColumn + 1):
key = row * self.columns + column
painter.setClipRect(column * self.squareSize,
row * self.squareSize, self.squareSize,
self.squareSize)
if key == self.lastKey:
painter.fillRect(column * self.squareSize + 1,
row * self.squareSize + 1, self.squareSize,
self.squareSize, Qt.red)
key_ch = self._chr(key)
painter.drawText(column * self.squareSize + (self.squareSize / 2) - fontMetrics.width(key_ch) / 2,
row * self.squareSize + 4 + fontMetrics.ascent(),
key_ch)
def createColorComboBox(self):
comboBox = QComboBox()
comboBox.addItem("Red", Qt.red)
comboBox.addItem("Blue", Qt.blue)
comboBox.addItem("Black", Qt.black)
comboBox.addItem("Magenta", Qt.magenta)
return comboBox
def drawBackgroundToPixmap(self):
r = self.scene.sceneRect()
self.background = QPixmap(qRound(r.width()), qRound(r.height()))
self.background.fill(Qt.black)
painter = QPainter(self.background)
bg = QImage(self.imagesDir + '/demobg.png')
painter.drawImage(0, 0, bg)
def paintEvent(self, event):
qp = QPainter()
qp.begin(self)
qp.fillRect(self.rect(), Qt.black)
self.img = self.render_image()
self.rect_x = (self.rect().width() / 2) - ((self.maxPixelsPerLine * self.pixelSize) / 2)
qp.drawImage(QRect(QPoint(self.rect_x, 0),
QPoint(self.rect_x + self.maxPixelsPerLine * self.pixelSize, (self.maxPixelsTotal / self.maxPixelsPerLine) * self.pixelSize)),
self.img)
qp.end()
def createEditor(self, parent: QWidget, option: QStyleOptionViewItem, index: QModelIndex):
editor = QComboBox(parent)
if sys.platform == "win32":
# Ensure text entries are visible with windows combo boxes
editor.setMinimumHeight(self.sizeHint(option, index).height() + 10)
editor.addItems(self.items)
if self.is_editable:
editor.setEditable(True)
editor.setInsertPolicy(QComboBox.NoInsert)
if self.current_edit_text:
editor.setEditText(self.current_edit_text)
if self.colors:
img = QImage(16, 16, QImage.Format_RGB32)
painter = QPainter(img)
painter.fillRect(img.rect(), Qt.black)
rect = img.rect().adjusted(1, 1, -1, -1)
for i, item in enumerate(self.items):
color = self.colors[i]
painter.fillRect(rect, QColor(color.red(), color.green(), color.blue(), 255))
editor.setItemData(i, QPixmap.fromImage(img), Qt.DecorationRole)
del painter
editor.currentIndexChanged.connect(self.currentIndexChanged)
editor.editTextChanged.connect(self.on_edit_text_changed)
return editor
def __init__(self, parent=None):
super(VideoWidget, self).__init__(parent)
self.setSizePolicy(QSizePolicy.Ignored, QSizePolicy.Ignored)
p = self.palette()
p.setColor(QPalette.Window, Qt.black)
self.setPalette(p)
self.setAttribute(Qt.WA_OpaquePaintEvent)