SÉRIE 2 *

 

Théorie

      Interface

    Série 1

     Série 2

       Série 3

       Série 4

. 
UTILISER LES CASES À COCHER POUR POSER UNE QUESTION
(Tiré des fiches de Mme Claudette Bélanger)

.

Cet exercice est un exemple de questions qui utilisent la case à cocher pour la sélection des réponses.  Il vous permettra également de pratiquer  l’utilisation du presse papier de windows.

  1. Dessinez l’interface. La feuille doit s'appeler F_quest2 et la barre de titre doit afficher CHOIX MULTIPLES. La propriété WindowState doit indiquer Maximized. Elle doit comprendre les éléments suivants. Les caractéristiques de tous les éléments sont laissés à votre bon goût.

ZT_quest   Une zone de texte ssez grande pour afficher la question; la propriété TEXT est vide.
OP_a Un bouton d'option pour afficher le choix  A.
OP_b Un bouton d'option pour afficher le choix B.
OP_c Un bouton d'option pour afficher le choix C.
OP_d Un bouton d'option pour afficher le choix D.
ET_mess Une étiquette pour afficher  Bonne réponse ou Mauvaise réponse en fonction de la décision du code de la procédure Valider.
BO_question

Un bouton pour appeler la procédure Questions; faire afficher sur le bouton Question.

BO_valider

Un bouton pour appeler la procédure Valider; faire afficher sur ce bouton OK.

BO_quit Un bouton pour quitter le programme avec confirmation. 

Voici un exemple du genre d'interface attendu. 

  1. Créez un module .BAS pour déclarer les deux variables suivantes: Global V_no as Integer pour le numéro de la question et Global V_pts as integer  pour le calcul des points. N’oubliez pas de sauvegarder ce module .BAS  dans votre sous répertoire Vb_Module2. Enregistrez ce fichier sous.... MODEX7.BAS.
  2. Revenez à la feuille F_Quest2, puis allez au menu OUTILS et choisissez Ajouter une procédure. Celle-ci est de type Sub et se nomme Questions. Complétez cette procédure comme ci-dessous. N'oubliez pas qu'une flèche (-->) indique que le texte de la ligne suivante doit se trouver sur la même ligne.

Sub questions ()
    ET_mess.Caption = ""     
    Let V_no = V_no + 1
    Select Case V_no     
      Case 1    
       
OP_a.Value = 1    

        ZT_quest.Text = "Un espace mémoire réservé pour conserver
-->
la valeur d'une
donnée qui peut varier est..."   
        OP_a.Caption = " une constante"   
        Op_b.Caption = "une donnée"
        Op_c.Caption = "une variable"
        Op_d.Caption = "une procédure"
      
Case 2    

       
OP_a.Value = 1
        ZT_quest.Text = "Quelle propriété permet d'afficher du texte -->
dans une étiquette?"
        OP_a.Caption = "TEXT"
        Op_b.Caption = "NAME"
        Op_c.Caption = "VALUE"
        Op_d.Caption = "CAPTION"
      End Select

End Sub

  1. Ajoutez une seconde procédure, toujours dans Général de la feuille, Appelez-la Valider et elle est aussi de type SUB.  Écrivez le code suivant.

    (V
    ous remarquez que la différence entre Case 1 et Case 2 est uniquement le IF OP_c.Value  et le IF OP_d. Value. Voici un moyen de sauver du temps:  écrivez la première partie jusqu’à Case 2, puis marquez un bloc avec la souris à partir de Case 1 jusqu’à la fin du End IF (il faut tenir le bouton et glisser la souris et le bloc se marquera en bleu), allez au menu Édition et choisissez Copier (CTRL C). Placez le curseur après le End IF, retournez au menu Édition, puis choisissez Coller. Changez le c pour le d, Case 1 pour Case 2  et ajoutez End Select.)
Sub valider ()  
      Select Case V_no   
      
Case 1  
         
If Op_c.Value = -1 Then
  
               ET_mess.Caption = "Bonne réponse"
 
           Else
                 
               ET_mess.Caption = "Mauvaise réponse"
 
           End If
 
         Case 2
 
           If Op_d.Value = -1 Then
 
               ET_mess.Caption = "Bonne réponse"
 
           Else
 
               ET_mess.Caption = "Mauvaise réponse"
 
           End If
 
        End Select  

End Sub
  1. Allez dans BO_Question et faites l’appel de la procédure Questions.

  2. Allez dans  BO_Valider et faites l’appel de la procédure Valider.

  3. Ajoutez le code nécessaire dans BO_quit pour une sortie avec confirmation.

  4. Essayez le programme. Vous remarquerez que la question 1 ne s’affiche pas au complet. Allez dans les propriétés de ZT_quest et changez la propriété Multiline pour True. Ceci permettra l’affichage de plusieurs lignes dans la zone de texte. Vérifiez l’exécution.

  5. Sauvegardez, dans le sous-répertoire VB_module2, le fichier sous... E7F1xx.FRM et le projet sous... EX7xx.VBP.

  6. Utilisez la variable V_pts (déjà déclarée comme variable globale) pour faire calculer les points dans la procédure Valider (vous l'avez fait dans l'exercice précédent) et, à la fin de cette procédure, faire afficher les points dans une étiquette de votre choix.

  7. Dans une autre étiquette, faites afficher à l’aide de la variable V_no  le numéro de la question.  Il faut ajouter cette ligne dans la procédure Questions.

  8. Ajoutez 3 commentaires pertinents dans chacune des deux procédures.

  9. Imprimez le code.

Pour les mordus...

Condition: être en avance de deux fiches sur la moyenne du groupe. Il faut donc vérifier avec l'enseignant avant de le faire. Un bonus de 2pts sera ajouté sur un travail au choix du prof.

  • Ajoutez trois ou quatre questions.

  • Faites calculer le pourcentage et le faites-le afficher.

  • Ajoutez une feuille de présentation des auteurs.

 

Ce site est optimisé pour Microsoft Internet Explorer en 800x600.Copyright © {2003} {ESLS - Yvon Lemay}. Tous droits réservés.

 Design by
LOGOSLAND CREATIONS