RadioPanel

Classe servant à la sélection d'options mutuellement exclusives.

Version: 1.1
Date: Le 6 août 1997
Rédaction: Jocelyn Houle
Direction: Jean Vaucher


Introduction

Les RadioPanels servent à sélectionner des options à l'aide de boutons parmi lesquels un seul peut être enfoncé. Il s'agit ainsi d'une façon de sélectionner des options mutuellement exclusives.

Code

BEGIN
   EXTERNAL CLASS WINDOWTOOLS;

   INSPECT NEW MainWindow("RadioPanel") DO
   BEGIN
      REF (Button)      Quit;
      REF (RadioPanel)  RB;

      SetSize(200, 100);
      RB :- MakeRadioPanel
             .AddButton   ("English")
             .AddSetButton("Francais")
             .AddButton   ("Norsk");
      Quit :- MakeButton("Ok").PlaceDownRight;
      Show;
      Quit.Wait;
      OutText(RB.CurrentChoice);
   END;
END;

On a d'abord créé le RadioPanel (MakeRadioPanel). Puis on a ajouté les choix de bouton (AddButton et AddSetButton). La procédure AddSetButton définit le choix initial. La commande OutText(RB.CurrentChoice) permet d'afficher la valeur du choix (c'est-à-dire "Francais" si le choix par défaut n'est pas changé).


Informations sur les RadioPanels

La création d'un RadioPanel se fait à l'aide de la procédure MakeRadioPanel, sans paramètre.

On peut ensuite spécifier les choix possibles à l'aide de 2 procédures:
procedure AddButton(Choice); text Choice;
Ajoute Choice comme choix à la suite des choix déjà spécifiés.
procedure AddSetButton(Choice); text Choice;
Ajoute Choice comme choix à la suite des choix déjà spécifiés, et le définit comme choix par défaut.
N.B. Si deux AddSetButton se succèdent pour le même RadioPanel, ce sera le plus récent qui deviendra le choix par défaut.

Une autre façon de procéder serait de créer tous les boutons d'avance à l'aide de AddButton pour ensuite faire SetButton.
procedure SetButton(Choice); text Choice;
Sélectionne le bouton ayant le nom Choice comme étiquette.

On peut aussi accéder au choix de l'usager. Nous utiliserons pour cela la procédure suivante:
text procedure CurrentValue;
Retourne le choix actuel.

Il existe également 2 procédures permettant de définir l'orientation de l'énumération des choix. Elles sont:
procedure SetHorizontal;
Aligne les choix de gauche à droite.

procedure SetVertical;
Aligne les choix de haut en bas.


Notes

Si les choix prennent plus de place que la fenêtre ne le permet, il se pourrait fort que des choix n'apparaissent pas à l'écran et que l'usager doive agrandir les dimensions de sa fenêtre pour tout voir.

Aussi, il est important de remarquer les ressemblances entre les RadioPanels et les MenuButtons. Pouvant tous les deux servir aux mêmes fonctions, on favorisera les RadioPanels lorsque l'on veut (ou doit) voir tous les choix qui s'offrent à nous. Les MenuButtons servent plus dans les cas où la liste des options est longue et lourde à voir en entier à l'écran.

Dernier point: si aucun bouton n'est spécifié par défaut, ou si on a spécifié un choix qui n'existe pas (dans SetButton), ce sera le premier bouton créé qui le sera. Toutefois, l'affichage ne le montrera pas, et il y aura une inconsitance. Donc, mieux vaut bien spécifier le bouton par défaut, soit à l'aide de AddSetButton, ou sinon avec SetButton, mais avec un choix valide.


Exemples de programmes

[Retour à l'index de WindowTools...]