1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187
|
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#Ligne 1 necessaire sous Linux
#Pour python 2.7
from Tkinter import *
from math import *
import random
import time
#Pour python 3.X
#from tkinter import *
#from math import *
#import random
#import time
class MonIhm():
# Création de la fenêtre principale (main window)
def __init__(self):
self.nombre_de_question=0
self.start = True
self.compteur=0
self.liste_questions=["Question : Quelle est la capitale du Liban ?\n ",\
"Question : Quand l'armistice de la seconde Guerre Mondiale a-t-elle été signée ? ",\
"Question : Quelle est la capitale de l'Estonie /n? ",\
"Question : Quelle est la langue maternelle la plus parlée au monde ? \n",\
"Question : Quelle est la langue officielle au Nigeria \n?",\
"Question : Qui a réalisé le père noel est une ordure ? \n",\
"Question : Quel est l'état le plus grand des Etats-Unis ?",\
"Question : Qui a écrit l'Assommoir ? \n",\
"Question : La pénicilline a été découverte par : \n",\
"Question : Le premier président de la République était : \n",\
"Question : En quelle année ont été créées les régions ? \n",\
"Question : Que collectionne un conchyophile ? \n",\
"Question : Quelle est la ville la plus peuplée du monde ? \n",\
"Question : Quelle formule mathématique permet d'établir les développements limités ? \n",\
"Question : Quel évènement a marqué l'année 1935 ? \n",\
"Question : Quelle est la hauteur de la Tour Eiffel ? \n",\
"Question : Quel est l'organe le plus volumineux et le plus massif parmi ceux-ci ? \n",\
"Question : En quelle année Neil Amstrong a-t-il posé le premier pas sur la lune ? \n",\
"Question : Quel chanteur fait partie des Rolling Stones ? \n",\
"Question : Quelle équipe de football a remporté la première coupe du monde en 1930 ? \n"]
self.liste_choix=["1) Beyrouth,2) Damas,3) Rabat ",\
"1) 8 mai 1945,2) 11 novemble 1945,3) 18 juin 1940 ",\
"1) Riga,2) Tallin,3) Vilnius",\
"1) L'Anglais,2) L'espagnol, 3) le chinois madarin ",\
"1) L'anglais,2) Le nigerian,3) L'afrikaans ",\
"1) Coline Serreau,2) Gerard Oury,3) Jean Marie Poiré ",\
"1) Le Texas,2) L'Alaska,3) Le Montana ",\
"1) Stendhal,2) Flaubert,3) Zola ",\
"1) Ian Fleming,2) Alexander Flening,3) Marie Curie ",\
"1) R.Coty,2) A.Pinay,3) V.Auriol ",\
"1) 1806,2) 1956,3) 1901 ",\
"1) Des bières,2) des coquillages,3) Des animaux empaillés ",\
"1) Tokyo,2) Mexico,3) New York ",\
"1) Schrodinger,2) Crutz,3) Taylor ",\
"1) Les lois sociales du Front populaire,2) Lois de Nüremberg,3) Hitler chancelier ",\
"1) 250 mètres,2) 324 mètres,3) 295 mètres ",\
"1) Le foie,2) L'estomac,3) Le colon ",\
"1) 1967,2) 1969,3) 1971 ",\
"1) Jonh Lennon,2) Mick Jagger,3) Brian Johnson ",\
"1) Italie,2) Brésil,3) Uruguay "]
self.liste_reponse=[1,1,2,3,1,3,2,3,2,3,2,2,1,3,2,2,1,2,2,3]
self.construct_ihm()
def construct_ihm(self):
self.Mafenetre = Tk()
self.Mafenetre.title('QCM')
self.Mafenetre.geometry('400x300+600+400')
self.Label1 = Label(self.Mafenetre, text = 'Voici un petit QCM présenté par Jonathan, Thibault , Landry ')
self.Label1.pack(side = TOP, padx = 5, pady = 5)
self.Label2 = Label(self.Mafenetre, text = 'Voulez- vous commencez ? ')
self.Label2.pack(side = LEFT, padx = 5, pady = 5)
self.Bouton_yes = Button(self.Mafenetre, text ='Oui', command = self.load_question_answer )
self.Bouton_yes.pack(side = LEFT, padx = 5, pady = 5)
self.Bouton_no = Button(self.Mafenetre, text ="Non", command = self.Mafenetre.destroy )
self.Bouton_no.pack(side = LEFT, padx = 5, pady = 5)
def start_ihm(self):
self.Mafenetre.mainloop()
def load_question_answer(self):
if self.start == True:
self.Bouton_yes.pack_forget()
self.Bouton_no.pack_forget()
self.Q=StringVar
self.Champ = Entry(self.Mafenetre, textvariable= self.Q, show='', bg ='bisque', fg='maroon')
self.Champ.focus_set()
self.Champ.pack(side = LEFT, padx = 5, pady = 5)
self.Bouton_verif = Button(self.Mafenetre, text ='Valider', command = self.read_answer)
self.Bouton_verif.pack(side = LEFT, padx = 5, pady = 5)
self.Mafenetre.title('Question')
self.start = False
self.n=random.randint(0,len (self.liste_questions)-1)
self.Label1.config(text="%s"%(self.liste_questions[self.n],))
self.Label2.config(text="%s"%(self.liste_choix[self.n],))
def read_answer(self):
self.Q=self.Champ.get()
print("self.q:" + str(self.Q), (type(self.Q)))
print("liste_rep:" + str(self.liste_reponse[self.n]), type(self.liste_reponse[self.n]))
print("cptr:" + str(self.compteur))
if (self.Q) == (self.liste_reponse[self.n]):
self.compteur += 1
self.liste_questions.pop(self.n)
self.liste_choix.pop(self.n)
self.liste_reponse.pop(self.n)
if len(self.liste_questions)> 0:
self.load_question_answer()
else :
self.result()
def result(self):
self.Label1.config(text="Note: %s"%(self.compteur))
if self.compteur == 20 :
self.Label2.config(text="20/20...Que pouvons nous dire... si ce n'est BRAVO")
elif 19>=self.compteur>=16 :
self.Label2.config(text="19/20 C'est presque excellent... Courage ! Le succes est au bout du chemin.")
elif 15>=self.compteur>=12 :
self.Label2.config(text="Tu as entre 12/20 et 15/20. Ne sois pas modeste, tu peux mieux faire !")
elif 11>=self.compteur>=10 :
self.Label2.config(text="Tu as entre 10/20 et 11/20. Il faut tra-vai-ller !")
elif 9>=self.compteur>=6 :
self.Label2.config(text="Tu as entre 9 et 6. Tu sais ce qu'il te reste à faire ..." )
elif 5>=self.compteur>=0 :
self.Label2.config(text="Tu as en dessous de 5/20... Sans commentaire...")
if __name__ == "__main__":
main_window = MonIhm()
main_window.start_ihm()
main_window.load_question_answer() |
Partager