Пример #1
0
    def paintEvent(self, event):
        s = self.size()
        qp = QtGui.QPainter()
        qp.begin(self)
        qp.setRenderHint(QtGui.QPainter.Antialiasing, True)
        pen = QtGui.QPen(QtCore.Qt.NoPen)
        qp.setPen(pen)
        qp.setBrush(QtGui.QColor(120, 120, 120))
        # qp.drawRoundedRect(0, 0, s.width(), s.height(), 12, 12)
        # lg = QtGui.QLinearGradient(35, 30, 35, 0)
        # lg.setColorAt(0, QtGui.QColor(210, 210, 210, 255))
        # lg.setColorAt(0.25, QtGui.QColor(255, 255, 255, 255))
        # lg.setColorAt(0.82, QtGui.QColor(255, 255, 255, 255))
        # lg.setColorAt(1, QtGui.QColor(210, 210, 210, 255))

        lg = QBrush(QtGui.QColor(180, 180, 180), Qt.SolidPattern)
        qp.setBrush(lg)
        qp.drawRoundedRect(1, 1, s.width() - 2, s.height() - 2, 10, 10)

        qp.setBrush(QtGui.QColor(210, 210, 210))
        qp.drawRoundedRect(2, 2, s.width() - 4, s.height() - 4, 10, 10)

        if self.__enabled:
            lg = QtGui.QLinearGradient(50, 30, 35, 0)
            lg.setColorAt(0, QtGui.QColor(230, 230, 230, 255))
            lg.setColorAt(0.25, QtGui.QColor(255, 255, 255, 255))
            lg.setColorAt(0.82, QtGui.QColor(255, 255, 255, 255))
            lg.setColorAt(1, QtGui.QColor(230, 230, 230, 255))
            qp.setBrush(lg)
            qp.drawRoundedRect(3, 3, s.width() - 6, s.height() - 6, 7, 7)
        else:
            lg = QtGui.QLinearGradient(50, 30, 35, 0)
            lg.setColorAt(0, QtGui.QColor(200, 200, 200, 255))
            lg.setColorAt(0.25, QtGui.QColor(230, 230, 230, 255))
            lg.setColorAt(0.82, QtGui.QColor(230, 230, 230, 255))
            lg.setColorAt(1, QtGui.QColor(200, 200, 200, 255))
            qp.setBrush(lg)
            qp.drawRoundedRect(3, 3, s.width() - 6, s.height() - 6, 7, 7)
        qp.end()