PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Ce que vous allez apprendre dans cette leçon
  • Présentation
  • Les instructions SI et SELON
  • L'instruction SI
  • L'instruction SELON
  • Exemple pratique : Utilisation de l'instruction SI et SELON
  • Projet manipulé
  • Création de la page
  • Création des champs de la page pour l'instruction conditionnelle SI
  • Instruction conditionnelle SI
  • Création des champs de la page pour l'instruction conditionnelle SELON
  • Instruction conditionnelle SELON
Annexe 3. Les instructions conditionnelles
Ce que vous allez apprendre dans cette leçon
  • L'instruction SI
  • L'instruction SELON
  • Exemple pratique

Durée estimée : 1 h
Leçon précédenteSommaireLeçon suivante
Présentation
Le WLangage est une suite d'instructions manipulant des données.
Les instructions conditionnelles permettent de comparer des variables et/ou des valeurs entre elles afin de faire des traitements différents. Il existe plusieurs instructions conditionnelles :
  • SI... ALORS... SINON... FIN
  • SELON ...
Les instructions SI et SELON

L'instruction SI

Cette instruction permet d'exécuter une action ou une autre en fonction du résultat d'une expression. Si l'expression est vérifiée, un traitement est lancé; si l'expression n'est pas vérifiée, un autre traitement peut être lancé.
L'instruction SI s'utilise comme ci-dessous :
SI <Expression à vérifier> ALORS
  Traitement à exécuter dans le cas où l'expression est vérifiée
SINON
  Traitement à exécuter dans le cas contraire
FIN
Exemple de code : Le code suivant sélectionne un nombre au hasard et selon la valeur affiche un message.
Tot est un monétaire
// Prend un nombre au hasard entre 100 et 4000
Tot = Hasard(100, 4000)
SI Tot>2000 ALORS
Info("Le montant est supérieur à 2000")
SINON
Info("Le montant est inférieur ou égal à 2000")
FIN
Dans ce cas, l'expression à vérifier correspond à "Tot>2000".
Remarque : Il est possible d'exécuter plusieurs lignes de code lors du traitement correspondant à une condition. Dans ce cas, la syntaxe à utiliser est la suivante :
SI <Expression à vérifier> ALORS
Ligne de code 1
Ligne de code N
SINON
Ligne de code 1
Ligne de code N
FIN

L'instruction SELON

Cette instruction permet d'évaluer une expression et d'exécuter un traitement pour chaque valeur possible de l'expression.
L'instruction SELON s'utilise comme ci-dessous :
SELON <Expression>
CAS Valeur 1 :
Traitement 1...
CAS Valeur 2 :
Traitement 2...
...
CAS Valeur N :
Traitement N...

AUTRES CAS
Traitement ...
FIN
Exemple : Le code suivant récupère la date du jour et selon sa valeur affiche un message différent. Pour le 1er et le 15 du mois, un message spécifique est affiché. Dans les autres cas, la date du jour est affichée.
D est une Date
D = DateDuJour()
SELON D..Jour // Teste le jour de la date
CAS 1 : Info("On est le premier jour du mois")
CAS 15 : Info("On est le 15 du mois.")
AUTRES CAS :
Info("On est le : "+ DateVersChaîne(D))
FIN
Remarques :
  • Si la ligne de code "CAS 1:..." est exécutée, les autres lignes de code correspondant aux valeurs possibles ne sont pas exécutées.
  • Il est possible de regrouper dans le même cas plusieurs valeurs. Les différentes valeurs sont séparées par une virgule. Par exemple :
    Ind est un entier = 2
    SELON Ind
           CAS 1,2 : Info("Cas 1 ou 2")
           CAS 3 : Info("Cas 3")
           AUTRE CAS : Info("Autre cas")        
    FIN
  • Il est possible d'exécuter plusieurs lignes de code lors du traitement correspondant à une valeur de l'expression. Dans ce cas, la syntaxe à utiliser est la suivante :
    SELON <Expression>
    CAS Valeur 1 :
    Traitement 1 - Ligne de code 1...
    Traitement 1 - Ligne de code 2...
    CAS Valeur N :
    Traitement N - Ligne de code 1...
    Traitement N - Ligne de code 2...
    AUTRES CAS
    Traitement ...
    FIN
Exemple pratique : Utilisation de l'instruction SI et SELON
Pour utiliser les instructions conditionnelles que nous venons d'étudier, nous allons réaliser la fenêtre suivante :
Deux manipulations sont disponibles :
  • Si l'utilisateur clique sur l'interrupteur, le bouton "Fermer" apparaît.
  • Si l'utilisateur clique sur le bouton "Tester", la case cochée dans le sélecteur est affichée.

Projet manipulé

Pour manipuler les différents concepts de cette leçon, nous allons réaliser différentes fenêtres. Ces fenêtres vont être créées dans le projet "Mes_Premières_Pages".
  • Ouvrez si nécessaire le projet "Mes_Premières_Pages".
    Pour cela, dans la fenêtre de bienvenue, cliquez sur "Cours d'auto-formation" et sélectionnez le premier projet "Mes premières pages (Exercice)".
    Astuce : si la fenêtre de bienvenue n'est pas affichée, sous le volet "Accueil", dans le groupe "Aide en ligne", déroulez "Guide d'Auto-formation" puis sélectionnez l'option "Mes premières pages (Exercice)".

Création de la page

  • Créez une nouvelle page vierge :
    1. Cliquez sur parmi les boutons d'accès rapide. La fenêtre de création d'un nouvel élément s'affiche : cliquez sur "Page" puis sur "Page". L'assistant de création de pages s'affiche.
    2. Sélectionnez "Page vierge" puis "Mise en page simple".
    3. Validez. La page est automatiquement créée sous l'éditeur. La fenêtre de sauvegarde de l'élément créé apparaît.
    4. Indiquez le titre de la page "Instructions conditionnelles". Le nom de la page "PAGE_Instructions_conditionnelles" est automatiquement proposé.
    5. Validez les informations affichées dans la fenêtre de sauvegarde en cliquant sur le bouton vert.

Création des champs de la page pour l'instruction conditionnelle SI

Deux champs doivent être créés :
  • un champ Interrupteur, permettant d'afficher ou non le bouton "Fermer".
  • un bouton "Fermer", permettant de fermer la fenêtre du navigateur.
  • Pour créer le champ Interrupteur :
    1. Sous le volet "Création", dans le groupe "Champs usuels", cliquez sur "Interrupteur" puis cliquez dans la page à la position où le champ doit être créé (par exemple en haut de la fenêtre).
    2. Cliquez sur le champ que vous venez de créer : le libellé "Option 1" passe en édition.
    3. Saisissez le libellé de l'option "Rendre visible le bouton de fermeture".
    4. Validez la saisie avec la touche Entrée.
  • Le libellé de l'option apparaît tronqué sous l'éditeur. Pour afficher correctement le champ :
    1. Sélectionnez le champ.
    2. Dans le menu contextuel (clic droit), sélectionnez l'option "Adapter la taille".
    3. Le champ est immédiatement agrandi et le libellé apparaît en entier.
  • Pour créer le bouton "Fermer" :
    1. Sous le volet "Création", dans le groupe "Champs usuels", cliquez sur .
    2. Cliquez à l'emplacement de création du bouton (par exemple à droite du champ Interrupteur).
    3. Cliquez sur le bouton que vous venez de créer. Le texte affiché dans le bouton passe en édition. Saisissez le libellé "Fermer".
    4. Validez la saisie avec la touche Entrée.
  • Ce bouton permet de fermer la fenêtre du navigateur. Nous allons saisir le code WLangage correspondant :
    1. Sélectionnez le bouton "Fermer".
    2. Utilisez la touche F2 : l'éditeur de code apparaît affichant les traitements associés au bouton.
    3. Dans le traitement navigateur "Clic sur BTN_Fermer", saisissez le code suivant :
      NavigateurFerme()
      La fonction NavigateurFerme permet de fermer la fenêtre en cours du navigateur Internet.
  • Le bouton "Fermer" doit être invisible à l'ouverture de la page. Cette information correspond à son "état initial". Nous allons modifier cet état dans la fenêtre de description du champ :
    1. Sélectionnez le bouton "Fermer".
    2. Affichez le menu contextuel du champ et sélectionnez l'option "Description".
    3. Dans l'onglet "IHM", modifiez l'état initial du champ en cliquant sur "Visible". Cette option est désormais décochée.
    4. Validez la fenêtre de description du champ.
    5. Le bouton "Fermer" est toujours visible sous l'éditeur. Nous avons changé son état uniquement en exécution.
    6. Enregistrez les modifications en cliquant sur parmi les boutons d'accès rapide (à gauche du ruban) ou par la combinaison de touches Ctrl + S.

Instruction conditionnelle SI

Dans notre exemple, le clic sur l'interrupteur doit déclencher l'apparition du bouton Fermer. Nous allons saisir le code WLangage associé à l'interrupteur.
  • Nous allons saisir le code WLangage associé à l'interrupteur. :
    1. Sélectionnez le champ Interrupteur.
    2. Utilisez la touche F2.
    3. Dans le traitement "Sortie avec modification de INT_SansNom1 (code navigateur)", saisissez le code suivant :
      SI INT_SansNom1=Vrai ALORS
      BTN_Fermer..Visible = Vrai
      SINON
      BTN_Fermer..Visible = Faux
      FIN

      Examinons ce code :
      • INT_SansNom1 et BTN_Fermer correspondent respectivement aux noms des champs Interrupteur et Bouton.

        astuce

        Pour manipuler le champ en cours dans un des traitements qui lui sont associés, il est possible d'utiliser le mot-clé MoiMême.
        Dans notre exemple, il est également possible d'écrire :
        Si MoiMême = Vrai ALORS
      • Le champ Interrupteur est un champ à 2 états : coché/non coché. Il correspond en programmation à une variable de type Booléen. Si le champ est coché, sa valeur est Vrai, si le champ est décoché, sa valeur est Faux.
      • Ce code teste la valeur de l'interrupteur.
        • Si l'interrupteur est coché, le bouton BTN_Fermer devient visible à l'aide de la propriété WLangage ..Visible.
        • Si l'interrupteur est décoché, le bouton BTN_FERMER devient invisible.

Note

Le WLangage est composé de fonctions et de propriétés. Les fonctions peuvent attendre des paramètres et renvoient des résultats. Les propriétés sont directement appliquées aux champs grâce à la syntaxe : <Nom du champ>..<Nom de la propriété>.
Dans notre exemple, la propriété ..Visible est utilisée sur le champ BTN_Fermer. A tout moment, il est possible de consulter l'aide en ligne d'une fonction ou d'une propriété grâce à la touche F1. Pour plus de détails sur l'aide en ligne, consultez "Comment accéder à l'aide en ligne ?", page 16.
  • Nous allons tester la page :
    1. Cliquez sur parmi les boutons d'accès rapide (ou utilisez la touche F9).
    2. Dans la page en exécution, cliquez sur l'interrupteur. Le bouton "Fermer" devient visible.
    3. Cliquez sur le bouton "Fermer" : l'onglet du navigateur se ferme et l'éditeur de pages apparaît.

Création des champs de la page pour l'instruction conditionnelle SELON

Deux champs doivent être créés :
  • un champ Sélecteur permettant de sélectionner la valeur à tester.
  • un champ Bouton permettant de lancer le test.
  • Pour créer le champ Sélecteur :
    1. Sous le volet "Création", dans le groupe "Champs usuels", cliquez sur "Sélecteur" (cliquez sur la flèche).
    2. Cliquez dans la fenêtre pour créer le champ (par exemple sous le champ Interrupteur créé précédemment).
    3. Affichez le menu contextuel du champ (clic droit) et sélectionnez l'option "Description".
    4. Dans l'onglet "Contenu", ajoutez deux nouvelles options en cliquant sur le bouton .
    5. Spécifiez les libellés des différentes options :
      • "Option 1" devient "Monsieur".
      • "Option 2" devient "Madame".
      • "Option 3" devient "Mademoiselle".
      • "Option 4" devient "Autre".
    6. Validez la fenêtre de description du champ Sélecteur (bouton vert).
  • Pour créer le bouton "Tester" :
    1. Sous le volet "Création", dans le groupe "Champs usuels", cliquez sur .
    2. Cliquez à l'emplacement de création du bouton (par exemple à droite du champ Sélecteur).
    3. Cliquez sur le bouton que vous venez de créer. Le texte affiché dans le bouton passe en édition. Saisissez le libellé "Tester".
    4. Validez la saisie avec la touche Entrée.

Instruction conditionnelle SELON

Dans notre exemple, le bouton Tester permet de tester la valeur sélectionnée et affiche un message.
  • Nous allons saisir le code WLangage associé au bouton Tester :
    1. Sélectionnez le bouton Tester.
    2. Utilisez la touche F2.
    3. Dans le traitement "Clic sur BTN_Tester (Code serveur)", saisissez le code suivant :
      SELON SEL_SansNom1
    4. Lors de l'appui sur la touche Entrée pour passer à la ligne suivante, l'éditeur de code affiche automatiquement les différentes possibilités du SELON :
    5. Saisissez le code suivant :
      SELON SEL_SansNom1
      // Monsieur
      CAS 1
      Info("Vous avez sélectionné Monsieur")
      // Madame
      CAS 2
      Info("Vous avez sélectionné Madame")
      // Mademoiselle
      CAS 3
      Info("Vous avez sélectionné Mademoiselle")
      // Autre
      CAS 4
      Info("Vous avez sélectionné Autre")
      FIN

      Examinons ce code :
      • SEL_SansNom1 correspond au nom du champ Sélecteur.
      • Le champ Sélecteur est un champ proposant plusieurs options (dans notre cas 4). Seule une option peut être cochée à la fois. Le champ Sélecteur correspond en programmation à une variable de type Entier. Chaque option est associée à une valeur. Si l'option est cochée, le champ Sélecteur a pour valeur l'identifiant de l'option cochée.
      • Ce code teste la valeur du sélecteur. Selon la valeur du sélecteur, un message est affiché.
  • Nous allons tester la page :
    1. Cliquez sur parmi les boutons d'accès rapide (ou utilisez la touche F9).
    2. Dans la page en cours de test, sélectionnez une option puis cliquez sur "Tester" : le message correspondant à l'option sélectionnée s'affiche.
    3. Fermez le navigateur.
Leçon précédenteSommaireLeçon suivante
Version minimum requise
  • Version 23
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire