Bonsoir à tous, j'ai une petite question concernant PyQt5 et sa gestion du focus.

Le code d'en dessous permet simplement de créer un bouton

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
19
20
21
22
23
24
25
26
from PyQt5.QtWidgets import *
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton
from PyQt5.QtGui import QIcon
 
 
class Example(QWidget):
 
    def __init__(self):
        super().__init__()
        self.initUI()
 
    def initUI(self):
        self.setGeometry(100, 100, 100, 100)
 
        self.push1 = QPushButton(self)
        self.push1.move(40,40)
        self.show()
 
def main():
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
 
if __name__ == '__main__':
    main()
Nom : test0.png
Affichages : 282
Taille : 955 octets

Avec le clavier je peux venir focus le pushbutton

Nom : test1.png
Affichages : 282
Taille : 987 octets

je vois comment changer la ligne pointillée avec le code ci dessous, mettant la ligne pointillée en rouge

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
palette = QPalette()
palette.setColor(QPalette.Button, QColor(0, 255, 255))
self.push1.setPalette(palette)
Nom : test2.png
Affichages : 308
Taille : 984 octets

La vient ma question : peut - on aussi changer le fond et les bords d'un pushbutton (ou autres widgets) avec la méthode QPalette si ce dernier est focus avec les touches claviers ? Je sais que setStyleSheet marche, mais je ne la trouverai pas adaptée pour mon utilisation.

Je vous remercie et bonne soirée =)