main_window_biblio.py [7] dans lequel on va écrire la logique de l'application. Voici
ce que doit contenir ce fichier, au minimum.
Note > Pour rappel, ce fichier est disponible dans le projet qt-designer .
# -*- coding: utf-8 -*# main_window_biblio.py
from PyQt5.QtWidgets import QMainWindow
from Ui_main_window_biblio import Ui_MainWindowBiblio
class MainWindowBiblio(QMainWindow,Ui_MainWindowBiblio): def
__init__(self,parent=None): super(MainWindowBiblio,self).__init__(parent)
self.setupUi(self)
Voici quelques explications sur ces lignes, qui sont à prendre essentiellement comme
une recette :
Nous importons la classe Ui_MainWindowBiblio (générée à partir de la feuille
créée dans Qt Designer).
La classe MainWindowBiblio hérite à la fois de la classe PyQt QMainWindow et
de Ui_MainWindowBiblio (héritage multiple).
Nous appelons la méthode setupUi de Ui_MainWindowBiblio : ceci crée tous les
widgets/layouts comme attributs de self et donc facilement accessibles (on
retrouve les noms qu'on a donnés dans Qt Designer : self.lineEditTitre, etc.).
Dans la suite du livre, nous ajouterons toute la logique de l'application en enrichissant
progressivement notre classe MainWindowBiblio. Pour donner un aperçu rapide de la
démarche, nous allons ici écrire quelques lignes pour réagir aux actions menus Ouvrir
et Quitter.
Lorsque les actions définies sont activées, que ce soit par clic ou raccourci-clavier,
elles émettent un signal triggered. Nous allons donc définir deux méthodes slots :
on_actionOuvrir_triggered : l'implémentation devra afficher une boîte de
dialogue standard permettant la sélection d'un fichier ; à cette fin, on utilisera la
105
Précédent

- 106/494

Suivant