Objectif : Application simple Delphi utilisant des objets de classe TCheckBox et TButtonRadio.
- Même exemple, code source en Java Swing
1° cas d'un seul composant conteneur
La fenêtre d'exemple comporte 3 cases à cocher (CheckBox1, CheckBox2, CheckBox3 : TCheckBox) et 3 boutons radios (RadioButton1, RadioButton2, RadioButton3 : TRadioButton):
L'application dans cet exemple n'exécute aucune action (seul le click sur le composant est intéressant et se programme comme pour n'importe quel autre bouton de classe TButton par exemple). Nous observons seulement le comportement d'action en groupe en Delphi de ces boutons.
6 boutons ont été déposés sur la fenêtre (classe TForm de type conteneur) :
- Les 3 TCheckBox, comme le montre l'image ci-haut, peuvent être tous cochés en même temps,
- Dans l'image ci-haut seul un TRadioButton , peut être coché à un instant donné.
2° cas de plus d'un composant conteneur
La fenêtre d'exemple comporte :
- 5 cases à cocher (CheckBox1, CheckBox2,CheckBox3, CheckBox4, CheckBox5 : TCheckBox),
- 5 boutons radios (RadioButton1, RadioButton2, RadioButton3, RadioButton4, RadioButton5 : TRadioButton),
- et un conteneur de type panneau (Panel1 : TPanel).
CheckBox1, CheckBox2,CheckBox3 sont déposés sur le conteneur fenêtre TForm,
RadioButton1, RadioButton2, RadioButton3 sont aussi déposés sur le conteneur fenêtre TForm,
CheckBox4, CheckBox5 sont déposés sur le conteneur panneau TPanel,
RadioButton4, RadioButton5 sont déposés sur le conteneur panneau TPanel,
Nous remarquons qu'automatiquement Delphi a regroupé les TRadioButton par conteneur, c'est-à-dire que RadioButton1, RadioButton2, RadioButton3 du conteneur (groupe) TForm s'excluent mutuellement et indépendamment il en est de même pour RadioButton4, RadioButton5 du conteneur TPanel (autre groupe).
Les six TCheckBox n'ont pas de comportement de groupe quel que soit le conteneur auquel ils appartiennent.
Pas de code source Delphi pour cet exemple