Итак, я пытался создать простой GUI UI, который будет отсчитывать время при запуске. У меня есть рабочий код, над которым я работал, но я не уверен, как запустить время в формате MM: SS.
Это мой GUI
Когда я нажимаю "Пуск", метка меняется на 60 (очевидно).
Цель состоит в том, чтобы установите фиксированное время, например 10 минут, и чтобы он начинался в 10:00, и go до 09:59, 09:58, и т. д. c.
Это код У меня пока:
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QApplication, QMainWindow
from PyQt5 import QtCore
import sys
DURATION_INT = 60
class App(QtWidgets.QMainWindow):
def __init__(self):
super().__init__()
# App window
self.app = QApplication(sys.argv)
self.win = QMainWindow()
self.win.setGeometry(200, 200, 200, 200)
self.win.setWindowTitle("test")
# Widgets
self.titleLabel = QtWidgets.QLabel(self.win)
self.titleLabel.setText("Welcome to my app")
self.titleLabel.move(50,20)
self.timerLabel = QtWidgets.QLabel(self.win)
self.timerLabel.setText("01:00")
self.timerLabel.move(50,50)
self.timerLabel.setAlignment(QtCore.Qt.AlignCenter)
self.timerLabel.setStyleSheet("font: 25pt Helvetica")
self.startButton = QtWidgets.QPushButton(self.win)
self.startButton.setText("Start")
self.startButton.move(50,100)
self.startButton.clicked.connect(self.startTimer)
self.stopButton = QtWidgets.QPushButton(self.win)
self.stopButton.setText("Stop")
self.stopButton.move(50,130)
# Show window
self.win.show()
sys.exit(app.exec_())
def startTimer(self):
self.time_left_int = DURATION_INT
self.myTimer = QtCore.QTimer(self)
self.myTimer.timeout.connect(self.timerTimeout)
self.myTimer.start(1000)
def timerTimeout(self):
self.time_left_int -= 1
if self.time_left_int == 0:
self.time_left_int = DURATION_INT
self.update_gui()
def update_gui(self):
self.timerLabel.setText(str(self.time_left_int))
app = QtWidgets.QApplication(sys.argv)
main_window = App()
main_window.show()
sys.exit(app.exec_())