Bonjour,
cela fait un moment que je cherche un bon exemple pour comprendre comment créer la connexion entre des composants de la GUI créer par Designer et des fonctions à coder. J'ai trouvé un exemple en PyQt4 et par forcément compatible avec PyQt5 ! Je n'ai pas trouvé de réponse sur le forum (mal cherché ?)
Quand il s'agit de relier une action d'un bouton j'ai trouvé l'information. Mais il n'y a pas que des boutons sur une page (menu, image, graph) ! J'utilise l'IDE Spyder qui me permet de tester mon code sur un noyau distant (Raspberry pi3).
Je peine à trouver les fonctions disponibles à chaque Widget !
Voila la ligne de code qui me permet de récupérer l'action clickbutton:
self.configOKButton.clicked.connect(lambda: self.pressconfigOKButtonSendCmd())
et je définie ma fonction:
# functions to call for the tab config
def pressconfigOKButtonSendCmd(self):
print ("Test: commande du bouton configOK")
Comment faire pour une action du menu bar ?
ça ne marche pas => self.fileActionQuit.triggerred.connect(lambda: self.pressMenuFileActionQuit())
erreur de compilation:
File "/home/mab/GPHM/GUI/gphmdlg.py", line 46, in __init__
self.fileActionQuit.triggerred.connect(lambda: self.pressMenuFileActionQuit())
AttributeError: 'QAction' object has no attribute 'triggerred'
j'avance dans mes recherches:
https://qt.developpez.com/doc/4.7/qaction/
dans la Class UI (créer via pyuic5) l'action a été créée
self.menuFile.addAction(self.fileActionQuit) => contenu dans Class Ui_MainWindow
Faut il encore savoir comment connecter !
Merci d'avance pour votre aide
Marc
Partager