Solution Exercice 4: liste des diviseurs d'un entier avec PyQt

Exercice 4

Concevoir une application graphique à l'aide de la bibliothèque PyQt5 qui affiche à l'utilisateur une fenêtre lui demandant de saisir son nombre entier N sur une zone de texte et en cliquant sur le bouton validate, l'application lui affiche la liste des diviseurs de N sur la deuxième zone de texte comme le montre la figure ci-dessous:


  1. - Le premier champ de saisie sera nommé value_of_N
  2. - Le deuxième champ de saisie sera nommé divisors_of_N
  3. - le bouton qui valide l'action sera nommé btn_validate

1) - Créer un répertoire nommé TP-PyQt

2) - Au sein du répertoire TP-PyQt, enregistrer le fichier créer par Qt Designer sous le nom de app.ui 
2) - Coder l'application de deux façons différentes:

  1. La première sur fichier main1.py en chargeant directement le fichier app.ui à l'aide du module load ui:
  2. La deuxième sur un fichier main2.py  à l'aide de la commande pyuic5:

Solution

Première méthode en utilisant le module loadUi

  1. A l'aide de Qt Designer, on crée facilement l'interface graphique
  2. puis on enregistre le fichier sur le répertoire TP-Python sous le nom de app.ui
  3. on crée ensuite au sein du même répertoire un fichier python nommé main1.py
  4. on crée au sein de main1.py une méthode nommée listDivisors() permettant de lister les diviseurs de l'entier N
  5. on crée ensuite une méthode nommée validate() qui valide l'action du bouton

code du fichier main1.py




Deuxième méthode en utilisant la commande pyuic5

Lancer la commande cmd et naviguer à l'aide de la commande cd (change directory) jusqu'au répertoire TP-PyQt et exécuter la commande:

A ce moment là on constate qu'il y a création d'un fichier python nommé: app.py
code du fichier app.py

Au sein du répertoire TP-PyQt on crée un fichier python nommé main2.py

code du fichier main2.py




 

Younes Derfoufi
CRMEF OUJDA

1 thought on “Solution Exercice 4: liste des diviseurs d'un entier avec PyQt

Leave a Reply

© 2022 Très Facile | WordPress Theme: Blogghiamo by CrestaProject.          CopyrightFrance.com
Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.