BTS SIO
SI4 LES BASES DE LA PROGRAMMATION
Python
Lycée des Métiers Jacques Prévert
Combs la Ville
Section BTS Services Informatiques aux Organisations
1
L’objectif de l’activité est de créer une application de création d’identifiants de connexion, en vous
basant sur le programme procédural déjà réalisé, mais cette fois, avec une interface graphique
(IHM).
Voici un exemple d’interface simple que vous pourrez arranger et améliorer par la suite.
Il s’agit d’un Widget Form sans menu :
Le 1er travail va consister à créer cette interface sans s’occuper du programme Python.
Ceci se fera à l’aide de Qt Designer . Il suffit de suivre la procédure décrite page suivante.
Télécharger PyQt5 depuis le serveur FTP et installez-le suivant les caractéristiques de votre PC :
PyQt5-5.1.1-gpl-Py3.3-Qt5.1.1-x32.exe
PyQt5-5.1.1-gpl-Py3.3-Qt5.1.1-x64.exe
Créer un répertoire dans Python33 dans lequel vous placerez tous les éléments du programme.
On l’appellera « AppliCreationComptes ».
Ouvrir Qt Designer et laissez-vous guider.
BTS SIO
SI4 LES BASES DE LA PROGRAMMATION
Python
Lycée des Métiers Jacques Prévert
Combs la Ville
Section BTS Services Informatiques aux Organisations
2
- Créer un répertoire dans Python33 qui s’appelle « AppliCreationComptes ».
- Vous enregistrerez les fichiers de l’application à l‘intérieur.
- Ouvrir QtDesigner.
- Dans la fenêtre de dialogue, choisir Widget et cliquer sur créer. On obtient l’interface Qt
avec un widget Form vide.
- Enregistrer le projet dans le répertoire créé précédemment sous le nom
« AppliCreationComptes.ui ».
- Modifier le titre de la fenêtre dans l’éditeur de propriétés sur la droite et trouvez la
propriété « WindowTitle » de la classe Qwidget. Mettre « Création de comptes ». Faire
« Entrer ».
BTS SIO
SI4 LES BASES DE LA PROGRAMMATION
Python
Lycée des Métiers Jacques Prévert
Combs la Ville
Section BTS Services Informatiques aux Organisations
3
- L’étape suivante consiste à placer des widgets de sorte que l’on se retrouve avec ce
« mini widget » Form :
- On donnera des noms aux widgets Line Edit, en relation avec le contenu. Exemple : on
pourra nommer « nom », le widget Line Edit contenant le nom de l’utilisateur. Cela sera
plus facile pour se repérer dans le programme par la suite.
- Pour le combo Box , il faut ajouter une liste de noms pour séparer les comptes profs et
élèves clic droit sur le widget, puis « Editer les éléments ».
- Pour le push Button, double-cliquer pour modifier le texte. Idem pour les group Box.
- Enregistrer votre travail et fermer QtDesigner.
- Ce fichier doit maintenant être « converti » en langage Python. Nous allons créer un
fichier nommé « ui_AppliCreationComptes.py » de la manière suivante :
- Ouvrir la fenêtre de commande DOS (cmd).
- Vérifiez avec la commande « DIR » que votre fichier « AppliCreationComptes.ui » s’ y
trouve. Puis entrez la commande suivante : pyuic5 o ui_AppliCreationComptes.py x
AppliCreationComptes.ui
Faire « entrer » ; il ne doit pas y avoir de message particulier. Fermer la fenêtre.
Group Box
Label
Combo Box
Line Edit
Push Button
BTS SIO
SI4 LES BASES DE LA PROGRAMMATION
Python
Lycée des Métiers Jacques Prévert
Combs la Ville
Section BTS Services Informatiques aux Organisations
4
- Ouvrir l’IDLE de Python3 (Démarrer- programmes) et ouvrir le fichier
« ui_AppliCreationComptes.py ».
Faire F5 pour exécuter le programme. La fenêtre précédente apparaît.
- L’étape suivante va consister à créer le programme principal indépendant de la partie
programme de l’interface graphique (ceci est alors plus simple lorsqu’il faut changer des
éléments de cette interface).
Pour cela, créer un nouveau fichier « CreationComptesMain.py » puis insérer les lignes
suivantes nécessaires pour afficher la fenêtre graphique.
# --- importation des modules utiles ---
from PyQt5.QtGui import *
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
import os,sys
# classe principale:
class myApp(QWidget, Ui_Form): # la classe reçoit le Qwidget principal
# Note : ici self représente la classe
def __init__(self, parent=None):
QWidget.__init__(self) # initialise le Qwidget principal
self.setupUi(parent) # Obligatoire
Mettre le nom donné
dans Qt designer
BTS SIO
SI4 LES BASES DE LA PROGRAMMATION
Python
Lycée des Métiers Jacques Prévert
Combs la Ville
Section BTS Services Informatiques aux Organisations
5
# fonction principale exécutant l'application Qt
def main(args):
a=QApplication(args) # crée l'objet application
f=QWidget() # crée le QWidget racine
c=myApp(f) # appelle la classe contenant le code de l'application
f.show() # affiche la fenêtre QWidget
r=a.exec_() # lance l'exécution de l'application
return r
# pour rendre le fichier *.py exécutable
if __name__=="__main__": # pour rendre le code exécutable
main(sys.argv) # appelle la fonction main
- Avec ce programme, vous ne pouvez pas encore ouvrir l’interface graphique ; vous devez
importer le programme précédent « ui_AppliCreationComptes.py ».
Ajouter l’instruction : from ui_AppliCreationComptes.py import * dans la partie
importation des modules.
- Lancer l’exécution de ce programme (F5) et vérifier que l’interface apparaît sans erreur.
Les actions sont pour l’instant inopérantes ; normal car le programme n’est pas terminé.
Fermer le programme.
1 / 6 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !