Как написать таймер на PyQt5 c использованием LCD Number?
Имеется код консольного таймера, но его нужно переписать под окно с LCD Number
import sys
from PyQt5 import QtCore
def timerEvent():
global time
time = time.addSecs(1)
print(time.toString("hh:mm:ss"))
app = QtCore.QCoreApplication(sys.argv)
timer = QtCore.QTimer()
time = QtCore.QTime(0, 0, 0)
timer.timeout.connect(timerEvent)
timer.start(1000)
sys.exit(app.exec_())
Ответы (1 шт):
Автор решения: S. Nick
→ Ссылка
Как вариант:
import sys
from PyQt5 import QtCore, QtWidgets
class MyGui(QtWidgets.QWidget):
def __init__(self):
super().__init__()
self.lcdTime = QtWidgets.QLCDNumber(self)
self.lcdTime.setSegmentStyle(QtWidgets.QLCDNumber.Filled)
self.lcdTime.setDigitCount(8)
self.time = QtCore.QTime(0, 0, 0)
vbox = QtWidgets.QVBoxLayout(self)
vbox.addWidget(self.lcdTime)
self.timer = QtCore.QTimer()
self.timer.timeout.connect(self.timerEvent)
self.timer.start(1000)
def timerEvent(self):
# global time
self.time = self.time.addSecs(1)
# print(self.time.toString("hh:mm:ss"))
self.lcdTime.display(self.time.toString("hh:mm:ss"))
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
w = MyGui()
w.resize(300, 120)
w.show()
sys.exit(app.exec_())
