def paintEvent(self, pe): # make an arrow polygon right in the middle painter = QPainter(self) painter.setPen(Qt.NoPen) # draw the background transparent rect painter.save() painter.setOpacity(self.BACKGROUND_OPACITY) # get the rectangle coordinates it should extend over the whole width with only a portion at the center painter.setBrush(Qt.black) empty_space_percent = 1 - self.BACKROUND_HEIGHT_PERCENT rect_top = empty_space_percent / 2 * self.height() rect_height = self.BACKROUND_HEIGHT_PERCENT * self.height() painter.drawRect(0, rect_top, self.width(), rect_height) painter.restore() painter.setRenderHint(QPainter.Antialiasing) pen = QPen() pen.setWidth(self.ARROW_LINE_WIDTH) pen.setCapStyle(Qt.RoundCap) if self._mouse_inside: pen.setColor(self._hover_color) else: pen.setColor(self._normal_color) # get the arrow coords painter.setPen(pen) self_center = QPointF(self.width() / 2, self.height() / 2) # use this as the arrow tip for now if self._direction == self.LEFT: h_shift = self._arrow_width elif self._direction == self.RIGHT: h_shift = - self._arrow_width v_shift = self._arrow_height / 2 top_point = self_center + QPointF(h_shift, - v_shift) bottom_point = self_center + QPointF(h_shift, v_shift) painter.drawLine(top_point, self_center) painter.drawLine(self_center, bottom_point)
def paintEvent(self, paintEvent): painter = QPainter(self) painter.setRenderHint(QPainter.Antialiasing) painter.scale(self.scale, self.scale) painter.drawRect(0, 0, 511, 511) painter.drawImage(0, 0, self.image) if self.freeze_image is not None and self.freeze_image is not self.image: painter.setOpacity(0.3) painter.drawImage(0, 0, self.freeze_image)
def paintEvent(self, paintEvent): painter = QPainter(self) painter.setRenderHint(QPainter.Antialiasing) painter.scale(self.scale, self.scale) painter.drawRect(0, 0, 511, 511) painter.drawImage(0, 0, self.image) if self.freeze_image is not None and self.freeze_image is not self.image: painter.setOpacity(0.3) painter.drawImage(0, 0, self.freeze_image)
def paintEvent(self, pe): painter = QPainter(self) icon = QPixmap(self._icon) icon = icon.scaled(self.size(), Qt.IgnoreAspectRatio) if not self._mouse_over or not self._enabled: painter.setOpacity(self._normal_opacity) else: painter.setOpacity(self._hover_opacity) painter.drawPixmap(0, 0, icon)
def paintEvent(self, pe): super(ProgressLineEdit, self).paintEvent(pe) painter = QPainter(self) painter.setOpacity(self.property("_progress_opacity")) sopb = QStyleOptionProgressBarV2() sopb.minimum = 0 sopb.maximum = 100 sopb.progress = self._progress sopb.initFrom(self) self.style().drawControl(QStyle.CE_ProgressBarContents, sopb, painter, self)
def paintEvent(self, pe): super(ProgressLineEdit, self).paintEvent(pe) painter = QPainter(self) painter.setOpacity(self.property("_progress_opacity")) sopb = QStyleOptionProgressBarV2() sopb.minimum = 0 sopb.maximum = 100 sopb.progress = self._progress sopb.initFrom(self) self.style().drawControl(QStyle.CE_ProgressBarContents, sopb, painter, self)
def paintEvent(self, pe): painter = QPainter(self) if self._checked: pixmap = self._second_icon else: pixmap = self._first_icon if self._mouse_over: painter.setOpacity(self.HOVER_OPACITY) else: painter.setOpacity(self.NORMAL_OPACITY) painter.drawPixmap(0, 0, pixmap)
def drawPreview(self, endPoint_x, endPoint_y): painter = QPainter(self.imagePreview) painter.setPen(QPen( self.myPenColor, self.myPenWidth, QtCore.Qt.SolidLine, QtCore.Qt.RoundCap, QtCore.Qt.RoundJoin)) painter.setClipping(True) painter.setRenderHint(QPainter.SmoothPixmapTransform, True) painter.setRenderHint(QPainter.HighQualityAntialiasing, True) painter.setRenderHint(QPainter.Antialiasing, True) painter.setOpacity(0.5) if self.tools['circle']: x1 = self.firstPoint_x y1 = self.firstPoint_y x2 = endPoint_x y2 = endPoint_y painter.drawEllipse(x1, y1, (x2 - x1), (y2 - y1)) if self.tools['line']: painter.drawLine( self.firstPoint_x, self.firstPoint_y, endPoint_x, endPoint_y) if self.tools['rect']: painter.drawRect( self.firstPoint_x, self.firstPoint_y, endPoint_x - self.firstPoint_x, endPoint_y - self.firstPoint_y) if self.tools['roundRect']: x1 = self.firstPoint_x y1 = self.firstPoint_y dx = endPoint_x - self.firstPoint_x dy = endPoint_y - self.firstPoint_y if x1 > endPoint_x and y1 > endPoint_y: painter.drawRoundedRect( endPoint_x, endPoint_y, -dx, -dy, 20, 20, 0) else: painter.drawRoundedRect(x1, y1, dx, dy, 20., 20.) self.update()
def paintEvent(self, pe): painter = QPainter(self) painter.save() background = QColor(55, 55, 55) brush = QBrush(background) painter.setOpacity(self._opacity) painter.setBrush(brush) painter.setPen(Qt.NoPen) painter.drawRect(self.rect()) painter.restore() # draw a bottom border painter.setPen(Qt.black) painter.drawLine(0, self.height(), self.width(), self.height()) # now the text pen = QPen(Qt.white) pen.setWidth(16) painter.setPen(pen) painter.setFont(QFont("Trebuchet MS", 16, QFont.Bold)) text_rect = QRect(self.rect()) text_rect.adjust(self._margin, self._margin, self._margin, self._margin) painter.drawText(text_rect, Qt.AlignLeft, self._message_str)
def paintEvent(self, pe): painter = QPainter(self) painter.save() background = QColor(55, 55, 55) brush = QBrush(background) painter.setOpacity(self._opacity) painter.setBrush(brush) painter.setPen(Qt.NoPen) painter.drawRect(self.rect()) painter.restore() # draw a bottom border painter.setPen(Qt.black) painter.drawLine(0, self.height(), self.width(), self.height()) # now the text pen = QPen(Qt.white) pen.setWidth(16) painter.setPen(pen) painter.setFont(QFont("Trebuchet MS", 16, QFont.Bold)) text_rect = QRect(self.rect()) text_rect.adjust(self._margin, self._margin, self._margin, self._margin) painter.drawText(text_rect, Qt.AlignLeft, self._message_str)
def paintEvent(self, event): """Display a translucent rounded rectangle.""" roundness = 10 rect = self.rect() bgcolor = self.palette().color(QPalette.Background) alpha_bgcolor = QColor(50, 50, 50, 150) # alpha_bgcolor = QColor(bgcolor.red(), bgcolor.green(), # bgcolor.blue(), 150) painter = QPainter() painter.begin(self) painter.save() painter.setRenderHint(QPainter.Antialiasing) painter.setPen(Qt.red) rounded_rect = QPainterPath() rounded_rect.addRoundRect(1, 1, rect.width() - 2, rect.height() - 2, roundness, roundness) painter.setClipPath(rounded_rect) self.setMask(painter.clipRegion()) painter.setOpacity(1.0) painter.fillPath(rounded_rect, QBrush(alpha_bgcolor)) painter.restore() painter.end()
def paintEvent(self, event): """Display a translucent rounded rectangle.""" roundness = 10 rect = self.rect() bgcolor = self.palette().color(QPalette.Background) alpha_bgcolor = QColor(50, 50, 50, 150) #alpha_bgcolor = QColor(bgcolor.red(), bgcolor.green(), # bgcolor.blue(), 150) painter = QPainter() painter.begin(self) painter.save() painter.setRenderHint(QPainter.Antialiasing) painter.setPen(Qt.red) rounded_rect = QPainterPath() rounded_rect.addRoundRect(1, 1, rect.width() - 2, rect.height() - 2, roundness, roundness) painter.setClipPath(rounded_rect) self.setMask(painter.clipRegion()) painter.setOpacity(1.0) painter.fillPath(rounded_rect, QBrush(alpha_bgcolor)) painter.restore() painter.end()