Créez des interfaces graphiques dans vos applications programmées en Python
Abstract
Dès lors que vous souhaitez diffuser votre application à des utilisateurs qui ne sont pas forcément
expérimentés au maniement de l’outil informatique, vous cherchez à concevoir des interfaces de
dialogue conviviales, simples à utiliser. En informatique, ces interfaces Homme / Machine reposent
sur la création de fenêtres graphiques constituées d’éléments visuels (widgets) que les utilisateurs
manipulent ; par exemple, pour renseigner des données, générer des événements ou encore
visualiser des résultats sous forme de tableaux ou de courbes.
Dans le cadre de cette présentation, une méthode et des outils sont proposés pour réaliser un
programme en langage Python, y associer une interface graphique et en produire un exécutable et
un installeur afin de simplifier la diffusion de l’application. Cette présentation s’adresse aussi bien
aux utilisateurs expérimentés de Python qu’à ceux qui sont à la recherche d’un langage de
programmation leur permettant de créer des interfaces graphiques (GUIs).
En premier, il est nécessaire de choisir une version de Python (ex : v2.7) et un environnement de
développement (IDE) ergonomique qui facilite la programmation (ex : PyScripter). Après un rappel
sur les bases du langage Python, il est proposé d’utiliser le package PyQt4 qui comprend le logiciel
QtDesigner pour concevoir les fenêtres graphiques et le module pyuic.py pour convertir les éléments
graphiques en code Python. Une fois l’interface créée avec QtDesigner, il suffit d’exécuter un script
batch (ex : Convertisseur_UI_en_PY.bat) pour automatiser la conversion du fichier *.ui en fichier
*_UI.py.
Le travail consiste ensuite à construire le script principal, dont une classe est dédiée à l’interaction
entre les actions de l’utilisateur et le corps du programme. En effet, cette classe gère entre autre les
événements des widgets des fenêtres graphiques.
Après avoir débogué le programme, il peut être pratique d’en générer un fichier exécutable pour le
diffuser à d’autres utilisateurs, sans installer Python et les packages additionnels. Cette opération est
rendue possible en utilisant un module Python CxFreeze à partir duquel on peut personnaliser le
fichier exécutable à créer (Icône, nom, version, description, auteur, etc.). Pour optimiser la diffusion
de l’application, il est possible d’utiliser un installeur simple d’utilisation nommé Inno Setup.
Domains
Life Sciences [q-bio]
Origin : Files produced by the author(s)