Apr-17-2020, 05:30 PM
Thanks again for your help and patience ! Made changes (see code below). Still doesn't work.
import sys from PyQt5.QtCore import Qt, QTimer from PyQt5.QtWidgets import QWidget, QLabel, QPushButton, QGridLayout, QSizePolicy, QApplication class Stopwatch(QWidget): def __init__(self, *args, **kwargs): self.timer = QTimer() self.timer.timeout.connect(self.update_time) def start_button(self): self.start_button.click.connect(self.start_timer) self.my_counter = 0 self.my_counter1 = 0 self.my_counter2 = 0 QWidget.__init__(self, *args, **kwargs) self.label = QLabel(self) self.label1 = QLabel(self) self.label2 = QLabel(self) self.label.setText("00") self.label.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) self.label.setAlignment(Qt.AlignCenter) self.label.setStyleSheet("QLabel {background-color: white; font-size: 30pt;}") self.label1 = QLabel(self) self.label1.setAlignment(Qt.AlignCenter) self.label1.setStyleSheet("QLabel {background-color: white; font-size: 30pt;}") self.label1.setText("00.") self.label2 = QLabel(self) self.label2.setAlignment(Qt.AlignCenter) self.label2.setStyleSheet("QLabel {background-color: pink; font-size: 30pt;}") self.label2.setText("00:") self.start_button = QPushButton(self) self.start_button.setStyleSheet("QPushButton {background-color: yellow; font-size: 15pt;}") self.start_button.setText("Start") self.layout = QGridLayout(self) self.layout.addWidget(self.label, 0, 4) self.layout.addWidget(self.label1, 0, 3) self.layout.addWidget(self.label2, 0, 2) self.layout.addWidget(self.start_button, 3, 3) self.setLayout(self.layout) self.show() def update_time(self): self.label.setText("%d" % self.my_counter) self.my_counter += 1 if self.my_counter == 100: self.my_counter = 0 self.my_counter1 += 1 self.label1.setText("%d" % self.my_counter1 + ".") if self.my_counter1 == 60: self.label1.setText("00.") self.my_counter1 = 0 self.my_counter2 += 1 self.label2.setText("0"+"%d" % self.my_counter2 + ":") elif self.my_counter1 < 10: self.label1.setText("0" + "%d" % self.my_counter1 + ".") elif self.my_counter < 10: self.label.setText("0" + "%d" % self.my_counter) def start_timer(self): self.timer.start(10) app = QApplication(sys.argv) win = Stopwatch() sys.exit(app.exec_())