Code : Tout sélectionner
;Les phrases
EnableExplicit
Enumeration Fenetre
#Fenetre_principale
EndEnumeration
Enumeration Gadgets
#Txt_1
#Txt_2
#Txt_3
#Txt_4
#Txt_5
#Txt_6
#Txt_Serie
#Cmb_1
#Cmb_2
#Cmb_3
#Cmb_4
#Cmb_5
#Cmb_6
#Txt_Enonce
#Txt_Signature
#Btn_Verifier
#Btn_Suivant
EndEnumeration
Enumeration Polices
#Font_Txt_Enonce
#Font_Txt_Serie
#Font_Txt_1
#Font_Txt_2
#Font_Txt_3
#Font_Txt_4
#Font_Txt_5
#Font_Txt_6
#Font_Cmb_1
#Font_Cmb_2
#Font_Cmb_3
#Font_Cmb_4
#Font_Cmb_5
#Font_Cmb_6
#Font_Btn_Verifier
#Font_Btn_Suivant
#Font_Txt_Signature
EndEnumeration
;}
Global Evenements, X, Points = 0, Q = 1
Global Dim Question.s(5)
Global Dim Reponse.s(5)
Global Dim RndReponse.s(5)
;}
Procedure Lire_les_donnees()
For X = 0 To 5
Read.s Question(X)
Read.s Reponse(X)
RndReponse(X)=Reponse(X)
Next
RandomizeArray(RndReponse())
EndProcedure
Procedure.s Clic_Btn_Verifier()
If GetGadgetText(#Cmb_1) = Reponse(0)
SetGadgetColor(#Txt_1, #PB_Gadget_FrontColor, $FF)
Points + 10
EndIf
If GetGadgetText(#Cmb_2) = Reponse(1)
SetGadgetColor(#Txt_2, #PB_Gadget_FrontColor, $FF)
Points + 10
EndIf
If GetGadgetText(#Cmb_3) = Reponse(2)
SetGadgetColor(#Txt_3, #PB_Gadget_FrontColor, $FF)
Points + 10
EndIf
If GetGadgetText(#Cmb_4) = Reponse(3)
SetGadgetColor(#Txt_4, #PB_Gadget_FrontColor, $FF)
Points + 10
EndIf
If GetGadgetText(#Cmb_5) = Reponse(4)
SetGadgetColor(#Txt_5, #PB_Gadget_FrontColor, $FF)
Points + 10
EndIf
If GetGadgetText(#Cmb_6) = Reponse(5)
SetGadgetColor(#Txt_6, #PB_Gadget_FrontColor, $FF)
Points + 10
EndIf
If Points < 10
MessageRequester("Info","Hélas, tu n'as que " + Str(Points) + " point")
Else
MessageRequester("Info","Bravo, tu as " + Str(Points) + " points")
EndIf
Points = 0
EndProcedure
Procedure Clic_Btn_Modifier()
Q + 1
If Q = 2
Restore Q2
ElseIf Q = 3
Restore Q3
ElseIf Q = 4
Restore Q4
ElseIf Q = 5
Restore Q5
ElseIf Q = 6
Restore Q6
ElseIf Q = 7
Restore Q7
ElseIf Q = 8
Restore Q8
ElseIf Q = 9
Restore Q9
ElseIf Q = 10
Restore Q10
Else
Q = 1
Restore Q1
EndIf
SetGadgetText(#Txt_Serie,"Série "+ Str(Q))
SetGadgetColor(#Txt_1, #PB_Gadget_FrontColor, 0)
SetGadgetColor(#Txt_2, #PB_Gadget_FrontColor, 0)
SetGadgetColor(#Txt_3, #PB_Gadget_FrontColor, 0)
SetGadgetColor(#Txt_4, #PB_Gadget_FrontColor, 0)
SetGadgetColor(#Txt_5, #PB_Gadget_FrontColor, 0)
SetGadgetColor(#Txt_6, #PB_Gadget_FrontColor, 0)
Lire_les_donnees()
SetGadgetText(#Txt_1,Question(0))
SetGadgetText(#Txt_2,Question(1))
SetGadgetText(#Txt_3,Question(2))
SetGadgetText(#Txt_4,Question(3))
SetGadgetText(#Txt_5,Question(4))
SetGadgetText(#Txt_6,Question(5))
ComboBoxGadget(#Cmb_1, 460, 85, 450, 33)
For x = 0 To 5
AddGadgetItem(#Cmb_1, -1, RndReponse(X))
Next
ComboBoxGadget(#Cmb_2, 460, 125, 450, 33)
For x = 0 To 5
AddGadgetItem(#Cmb_2, -1, RndReponse(X))
Next
ComboBoxGadget(#Cmb_3, 460, 165, 450, 33)
For x = 0 To 5
AddGadgetItem(#Cmb_3, -1, RndReponse(X))
Next
ComboBoxGadget(#Cmb_4, 460, 205, 450, 33)
For x = 0 To 5
AddGadgetItem(#Cmb_4, -1, RndReponse(X))
Next
ComboBoxGadget(#Cmb_5, 460, 245, 450, 33)
For x = 0 To 5
AddGadgetItem(#Cmb_5, -1, RndReponse(X))
Next
ComboBoxGadget(#Cmb_6, 460, 285, 450, 33)
For x = 0 To 5
AddGadgetItem(#Cmb_6, -1, RndReponse(X))
Next
SetGadgetFont(#Cmb_1, LoadFont(#Font_Cmb_1, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Cmb_2, LoadFont(#Font_Cmb_2, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Cmb_3, LoadFont(#Font_Cmb_3, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Cmb_4, LoadFont(#Font_Cmb_4, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Cmb_5, LoadFont(#Font_Cmb_5, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Cmb_6, LoadFont(#Font_Cmb_6, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
EndProcedure
Procedure Fermer_Fenetre_principale()
CloseWindow(#Fenetre_principale)
End
EndProcedure
Procedure OpenWindow_Fenetre_principale()
If OpenWindow(#Fenetre_principale, 420, 195, 920, 420, "Apprendre le français en s'amusant", #PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_TitleBar)
BindEvent(#PB_Event_CloseWindow, @Fermer_Fenetre_principale(), #Fenetre_principale)
TextGadget(#Txt_Enonce, 10, 10, 900, 70, "Choisissez la bonne proposition pour composer une phrase qui a du sens", #PB_Text_Center)
TextGadget(#Txt_Serie, 395, 340, 130, 33, "Série 1")
TextGadget(#Txt_1, 10, 85, 450, 33, Question(0))
TextGadget(#Txt_2, 10, 125, 450, 33, Question(1))
TextGadget(#Txt_3, 10, 165, 450, 33, Question(2))
TextGadget(#Txt_4, 10, 205, 450, 33, Question(3))
TextGadget(#Txt_5, 10, 245, 450, 33, Question(4))
TextGadget(#Txt_6, 10, 285, 450, 33, Question(5))
ComboBoxGadget(#Cmb_1, 460, 85, 450, 33)
For x = 0 To 5
AddGadgetItem(#Cmb_1, -1, RndReponse(X))
Next
ComboBoxGadget(#Cmb_2, 460, 125, 450, 33)
For x = 0 To 5
AddGadgetItem(#Cmb_2, -1, RndReponse(X))
Next
ComboBoxGadget(#Cmb_3, 460, 165, 450, 33)
For x = 0 To 5
AddGadgetItem(#Cmb_3, -1, RndReponse(X))
Next
ComboBoxGadget(#Cmb_4, 460, 205, 450, 33)
For x = 0 To 5
AddGadgetItem(#Cmb_4, -1, RndReponse(X))
Next
ComboBoxGadget(#Cmb_5, 460, 245, 450, 33)
For x = 0 To 5
AddGadgetItem(#Cmb_5, -1, RndReponse(X))
Next
ComboBoxGadget(#Cmb_6, 460, 285, 450, 33)
For x = 0 To 5
AddGadgetItem(#Cmb_6, -1, RndReponse(X))
Next
ButtonGadget(#Btn_Verifier, 50, 335, 195, 40, "Vérifier")
ButtonGadget(#Btn_Suivant, 670, 335, 195, 40, "Suivant")
TextGadget(#Txt_Signature, 327, 385, 265, 33, "© Micoute 04/09/2014")
; Gadget Fonts
SetGadgetFont(#Txt_Enonce, LoadFont(#Font_Txt_Enonce, "DejaVu Sans Mono", 20, #PB_Font_HighQuality))
SetGadgetFont(#Txt_Serie, LoadFont(#Font_Txt_Serie, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Txt_1, LoadFont(#Font_Txt_1, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Txt_2, LoadFont(#Font_Txt_2, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Txt_3, LoadFont(#Font_Txt_3, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Txt_4, LoadFont(#Font_Txt_4, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Txt_5, LoadFont(#Font_Txt_5, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Txt_6, LoadFont(#Font_Txt_6, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Cmb_1, LoadFont(#Font_Cmb_1, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Cmb_2, LoadFont(#Font_Cmb_2, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Cmb_3, LoadFont(#Font_Cmb_3, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Cmb_4, LoadFont(#Font_Cmb_4, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Cmb_5, LoadFont(#Font_Cmb_5, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Cmb_6, LoadFont(#Font_Cmb_6, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Btn_Verifier, LoadFont(#Font_Btn_Verifier, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Btn_Suivant, LoadFont(#Font_Btn_Suivant, "DejaVu Sans Mono", 20, #PB_Font_Bold|#PB_Font_HighQuality))
SetGadgetFont(#Txt_Signature, LoadFont(#Font_Txt_Signature, "Microsoft Sans Serif", 20, #PB_Font_HighQuality))
EndIf
BindGadgetEvent(#Btn_Verifier, @Clic_Btn_Verifier())
BindGadgetEvent(#Btn_Suivant, @Clic_Btn_Modifier())
EndProcedure
Lire_les_donnees()
OpenWindow_Fenetre_principale()
;{- Boucle des événements
Repeat
WaitWindowEvent()
ForEver
;}
;{
DataSection
Q1:
Data.s "Grand-mère enfourne","le gâteau.","La clé entre","dans la serrure."
Data.s "L'avion atterrit","sur la piste.","L'oiseau quitte","son nid."
Data.s "La poule picore","dans la basse-cour.","Le chat attrape","la souris."
Q2:
Data.s "Papa repeint","la maison.","Les enfants chantent","une chanson."
Data.s "Les roses fleurissent","dans le jardin.","Maman remplit","la baignoire."
Data.s "Ce gâteau est","encore trop chaud.","La fermière ramasse","les oeufs."
Q3:
Data.s "Mathilde se brosse","les dents.","Je me couche","dans mon grand lit."
Data.s "Ce bonbon est","très collant.","Mon chien court","plus vite que moi."
Data.s "Le magasin ouvre","à 14h00.","Les oranges poussent","dans les pays chauds."
Q4:
Data.s "Le ventilateur rafraîchit","la pièce.","Ma sœur parle","l'espagnol."
Data.s "Ce restaurant sert","des moules frites.","Pierre promène","son chien."
Data.s "Cette histoire fait","très peur.","Ce pamplemousse est","très amer."
Q5:
Data.s "Le train roule","vers Paris.","La jeune fille rêve","au prince charmant."
Data.s "Le professeur corrige","mes fautes.","Maëlys coiffe","sa poupée Barbie."
Data.s "Le livreur apporte","la pizza.","La dentiste soigne","mes dents."
Q6:
Data.s "L'eau coule","du robinet.","Le vent souffle","très fort."
Data.s "Paris est","une très belle ville.","Luna écrit","une lettre à son ami."
Data.s "La souris fuit","devant le gros chat.","Les nouilles sont","trop salées."
Q7:
Data.s "Ce poème comporte","quatre strophes.","Les cyclistes se doublent","dans la côte."
Data.s "J'ai fini","de faire la vaisselle.","Le bébé boit","son biberon."
Data.s "Le facteur apporte","le courrier.","Tu veux des frites","avec ton steak ?"
Q8:
Data.s "Les Italiens aiment","beaucoup les pâtes.","Le chien de berger rassemble","les moutons."
Data.s "Grand-père écoute","la radio.","Le canard barbotte","dans la mare."
Data.s "Le lapin grignote","une carotte.","L'orage gronde","depuis une heure."
Q9:
Data.s "La patinoire ferme","chaque été.","L'eau de source est","très pure."
Data.s "Le cavalier monte","sur son cheval.","Ce vilain garçon tire","la langue aux passants."
Data.s "L'araignée tisse","sa toile dans le buisson.","Maman cueille","des fleurs dans le jardin."
Q10:
Data.s "Les enfants nagent","dans la piscine.","La peste est","une maladie grave."
Data.s "Papi fait","la sieste chaque après-midi.","Le jardinier pousse","sa brouette."
Data.s "Le boucher découpe","la viande.","Le ver de terre sort","de son trou."
;}