QWidget имеет метод repaint () для перерисовки только определенной части виджета
QWidget.repaint (self, int x, int y, int w, int h)
QWidget.repaint (self, QRect)
QWidget.repaint (self, QRegion)
Вы можете создать QTimer, который будет запускаться с интервалами:
timer = QtCore.QTimer()
timer.timeout.connect(doBlinkMethod)
timer.start(1000) # every second
def doBlinkMethod():
print "blah"
Вы можететакже реализуйте свой встроенный таймер виджетов, чтобы просто действовать на себя: http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qobject.html#startTimer