Button

Classes de WindowTools destinées à la gestion d'événements.

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


Introduction

Les boutons sont des fenêtres qui, lorque l'on clique à l'intérieur, entraînent une action.

Un bouton peut être fancy, dans lequel cas il aura une apparence spéciale.

Code

BEGIN
   EXTERNAL CLASS WindowTools;

   INSPECT NEW MainWindow("Encheres") DO
   BEGIN
      REF(Button) TheButton;
      SetSize(150, 75);
      TheButton :- MakeButton("Click").PlaceCentered;
      Show;
      TheButton.Wait;
      OutText("Une fois..."); OutImage;
      TheButton.Wait;
      OutText("Deux fois..."); OutImage;
      TheButton.Wait;
      OutText("Trois fois..."); OutImage;
      OutText("Vendu!!!");
   END;
END;

Le bouton a été créé grâce à la fonction MakeButton où l'on a spécifié l'étiquette du bouton.

TheButton.Wait attend qu'on ait appuyé sur le bouton TheButton avant de continuer le programme.


Informations sur les Buttons

La création d'un Button se fait grâce à l'appel MakeButton:
ref(Button) procedure MakeButton (Label); text Label;
Retourne un nouveau Button ayant Label comme étiquette.
ref(Button) procedure MakeFancyButton (Label); text Label;
Retourne un bouton fancy ayant Label comme étiquette.

Pour attendre un bouton, on n'a qu'à faire un Wait:
procedure Wait;
Attend qu'on aît appuyé sur le bouton
Note: Cet attribut est accessible par notation pointée. Exemple: TheButton.Wait en haut.

On peut également changer l'étiquette d'un bouton:
procedure SetHeading(NewHeading); text NewHeading;
Change l'étiquette du bouton pour NewHeading.

Mais la taille du bouton ne change pas automatiquement. Pour ce, il faut appeler:
procedure Resize;
Modifie la taille du bouton pour correspondre à l'étiquette.

On peut finalement afficher une Picture dans le bouton plutôt que du texte:
procedure SetIcon(PictureFile); text PictureFile;
Utilise l'image dont l'endroit dans le réseau est défini par PictureFile comme étiquette.

Il existe finalement une procédure accessible de la fenêtre parente et qui peuvent s'avérer utile...
procedure MakeButtonsSameWidth;
Tous les boutons de la fenêtre auront la taille du plus grand bouton.


Exemple de programmes

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