Bonjour à tous,


Je suis débutante en Python. Voilà mon souci, j'ai un bouton de soumission désactivé par défaut au lancement du programme. Pour le test, j'essaie de le réactiver au bout de 5 secondes et de changer son style CSS mais rien ne se passe.
Je n'ai pas d'erreur dans la console. J'ai utilisé une fonction print("Bouton activé") dans mon callback pour essayé de débugger, mais aucun affichage non plus. C'est comme si la méthode activate() de ma classe MyButton n'était pas appelée
Pourriez vous m'apporter votre aide ?

Application
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
# Lancement du Timer
chrono = MyTimer()
chrono.start()
MyTimer
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
from PySide6.QtCore import QTimer
from controllers.Btn import MyButton

class MyTimer(MyButton):
    def __init__(self):
        super().__init__()
        self.__reading_time: int = 5000  # 5 secondes

    def start(self):
        QTimer.singleShot(self.__reading_time, self.activate)
MyButton
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
from PySide6.QtWidgets import QPushButton
from PySide6.QtCore import QSize

class MyButton:
    def __init__(self) -> None:
        self.__btn = QPushButton('Soumettre réponses')
        self.__btn.setFixedSize(QSize(400, 48))
        self.__btn.setDisabled(True)

    def get(self):
        return self.__btn

    def activate(self):
        print("bouton activé")
        self.__btn.setDisabled(False)
        self.__btn.setStyleSheet(
            "padding: 8px; margin-left:100px; background-color:#00af3b; color:white; border:none; font-size:16px")