Il est temps de tester tout ceci. Pour exécuter l'application via eric6, activez le menu
Lancer > Lancer projet… (Maj+F2), ensuite OK. Pour rappel, les fois suivantes, il
suffira de presser F4 au clavier pour lancer l'application. Sans eric6, lancez la
commande
python start_app.py
Vous pouvez vérifier le bon comportement de l'application en activant les fonctions
Ouvrir... et Quitter de différentes manières.
Le générateur de code d'eric6
eric6 propose une fonction Générateur de code… dans le menu contextuel d'une
feuille. Cette fonction permet de générer un premier main_window_biblio.py
contenant le squelette du code de l'application, c'est-à-dire, en gros, la classe
MainWindowBiblio avec son constructeur, les signatures de méthodes slots sans
leur implémentation (voir listings plus hauts). Nous n'avons pas utilisé cette
fonction car elle comporte, dans eric6, quelques imperfections gênantes, notamment
concernant les imports en Python 3. Cette fonction est tout à fait contournable — et
contournée dans le présent chapitre ! Voici néanmoins quelques explications
sommaires sur cette fonction qui pourrait s'améliorer dans une prochaine version
d'eric.
Attention > Cette fonction Générateur de code… est une fonction d'eric6, pas de
PyQt ; elle ne doit pas être confondue avec la fonction Compiler la feuille que
nous avons vue et qui génère le fichier Ui_main_window_biblio.py en appelant
l'outil pyuic5 de PyQt.
Après activation de Générateur de code…, un dialogue s'ouvre : il permet de
définir le nom de la classe à générer (MainWindowBiblio), le nom du fichier
Python à écrire (main_window_biblio.py) et, par widget, les signaux qui nous
intéressent (en cochant des cases). Après confirmation, le fichier spécifié est créé,
avec la méthode __init__, les méthodes slots et les connexions aux signaux
choisis. Le programmeur peut alors éditer ce fichier et remplacer les corps de
méthodes vides (raise NotImplementedError) par ce qu'il faut.
[5] Pour les connaisseurs, on pourrait utiliser ici le terme transpileur (parfois appelé
108
Précédent

- 109/494

Suivant