def paint(self, painter, rect):
panel = QStyleOptionFrame()
self.initStyleOption(panel)
style = self.style()
# use PE_PanelLineEdit instead of static PE_Frame to have hover/focus
# animation
style.drawPrimitive(QStyle.PE_PanelLineEdit, panel, painter, self)
rect = style.subElementRect(QStyle.SE_FrameContents, panel, self)
painter.fillRect(rect, Qt.white)
innerRect = rect.adjusted(2, 2, -2, -2)
if self._color is not None:
painter.fillRect(innerRect, self._color)
else:
pen = painter.pen()
pen.setColor(strikeColor)
pen.setWidthF(1.5)
painter.setPen(pen)
painter.setRenderHint(QStylePainter.Antialiasing)
painter.setClipRect(innerRect)
bL = innerRect.bottomLeft()
bL.setY(bL.y() + .5)
tR = innerRect.topRight()
tR.setY(tR.y() + 1)
painter.drawLine(bL, tR)
评论列表
文章目录