Python affichage heure dynamique en continu
Résolu
A voir également:
- Affichage heure livebox 4
- Just livebox - Accueil - Box & Connexion Internet
- Code gta 4 ps4 - Guide
- Affichage double ecran - Guide
- Livebox admin - Guide
- Changement d'heure - Guide
4 réponses
Bonjour,
Une petite recherche google t'amène par exemple à cette page, qui répond exactement à ton problème.
Contrairement à ce qui a été dit plus haut, faire une boucle n'est pas la bonne manière de procéder, car tous les modules permettant d'afficher une interface graphique (que ce soit PyQt, GTK, ou Tk) utilisent une boucle principale pour exécuter le programme. En terme d'implémentation, cela veut dire que tout ton programme réagit à des événements (par exemple, un clic de souris, une saisie clavier, ou en l'occurrence, un pas de temps), et que le programme principale ne fait que lancer la fenêtre.
Si l'on détaille maintenant le programme ci-dessus :
Bonne chance
Une petite recherche google t'amène par exemple à cette page, qui répond exactement à ton problème.
# importing required librarie import sys from PyQt5.QtWidgets import QApplication, QWidget from PyQt5.QtWidgets import QVBoxLayout, QLabel from PyQt5.QtGui import QFont from PyQt5.QtCore import QTimer, QTime, Qt class Window(QWidget): def __init__(self): super().__init__() # setting geometry of main window self.setGeometry(100, 100, 800, 400) # creating a vertical layout layout = QVBoxLayout() # creating font object font = QFont('Arial', 120, QFont.Bold) # creating a label object self.label = QLabel() # setting centre alignment to the label self.label.setAlignment(Qt.AlignCenter) # setting font to the label self.label.setFont(font) # adding label to the layout layout.addWidget(self.label) # setting the layout to main window self.setLayout(layout) # creating a timer object timer = QTimer(self) # adding action to timer timer.timeout.connect(self.showTime) # update the timer every second timer.start(1000) # method called by timer def showTime(self): # getting current time current_time = QTime.currentTime() # converting QTime object to string label_time = current_time.toString('hh:mm:ss') # showing it to the label self.label.setText(label_time) # create pyqt5 app App = QApplication(sys.argv) # create the instance of our Window window = Window() # showing all the widgets window.show() # start the app App.exit(App.exec_())
Contrairement à ce qui a été dit plus haut, faire une boucle n'est pas la bonne manière de procéder, car tous les modules permettant d'afficher une interface graphique (que ce soit PyQt, GTK, ou Tk) utilisent une boucle principale pour exécuter le programme. En terme d'implémentation, cela veut dire que tout ton programme réagit à des événements (par exemple, un clic de souris, une saisie clavier, ou en l'occurrence, un pas de temps), et que le programme principale ne fait que lancer la fenêtre.
Si l'on détaille maintenant le programme ci-dessus :
-
timer
permet de lever un événement toutes les secondes ; celui-ci déclenche grâce àconnect
la méthodeshowTime
; - la méthode
showTime
corrige l'affichage ; - le programme principale ne faut que créer et lance l'application.
Bonne chance
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 583
bonjour,
tu ne montres qu'une partie de ton code.
Merci d'utiliser les balises de code quand tu partages du code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
je suggère de faire une boucle, dans laquelle tu mets également un pause de une seconde (ou moins, suivant la précision requise).
tu ne montres qu'une partie de ton code.
Merci d'utiliser les balises de code quand tu partages du code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
je suggère de faire une boucle, dans laquelle tu mets également un pause de une seconde (ou moins, suivant la précision requise).
Merci pour la réponse. voila mon code:
je veux savoir comment faire une boucle avec pause.
from datetime import datetime from PyQt5.uic import loadUi from PyQt5.QtWidgets import QApplication app=QApplication([]) win=loadUi('arith.ui') win.show() now = datetime.now() t2 = now.strftime("%H:%M:%S") win.t1.setText(t2) app.exec_()
je veux savoir comment faire une boucle avec pause.
from datetime import datetime import time from PyQt5.uic import loadUi from PyQt5.QtWidgets import QApplication app=QApplication([]) win=loadUi('time.ui') win.show() now = datetime.now() t2 = now.strftime("%H:%M:%S") win.t1.setText(t2)
Remarque :
t1est la zone d'affichage de l'heure. c'est une zone
Label