| 37 | self.sColor = QtGui.QColor('#aa0087') |
| 38 | |
| 39 | def paintEvent(self, event): |
| 40 | rec = min(self.width(), self.height()) |
| 41 | tik = QtCore.QTime.currentTime() |
| 42 | #painter |
| 43 | painter = QtGui.QPainter(self) |
| 44 | #zipping code to draw pointers |
| 45 | def drawPointer(color, rotation, pointer): |
| 46 | painter.setBrush(QtGui.QBrush(color)) |
| 47 | painter.save() |
| 48 | painter.rotate(rotation) |
| 49 | painter.drawConvexPolygon(pointer) |
| 50 | painter.restore() |
| 51 | #tune up painter |
| 52 | painter.setRenderHint(QtGui.QPainter.Antialiasing) |
| 53 | painter.translate(self.width() / 2, self.height() / 2) |
| 54 | painter.scale(rec / 200, rec / 200) |
| 55 | painter.setPen(QtCore.Qt.NoPen) |
| 56 | #draw pointers |
| 57 | drawPointer(self.bColor, (30 * (tik.hour() + tik.minute() / 60)), self.hPointer) |
| 58 | drawPointer(self.bColor, (6 * (tik.minute() + tik.second() / 60)), self.mPointer) |
| 59 | drawPointer(self.sColor, (6 * tik.second()), self.sPointer) |
| 60 | #draw face |
| 61 | painter.setPen(QtGui.QPen(self.bColor)) |
| 62 | for i in range(0, 60): |
| 63 | if (i % 5) != 6: |
| 64 | painter.drawLine(87, 0, 97, 0) |
| 65 | painter.rotate(6) |
| 66 | painter.end() |
| 67 | |
| 68 | if __name__ == '__main__': |
| 69 | app = QtGui.QApplication(argv) |