Agir sur des groupes de boutons, autoriser ou pas la sélection multiple et la sélection minimale d'un bouton (comme avec TRadioButton et TCheckBox) avec plus de possibilités et plus d'agrément dans l'aspect de l'interface graphique.
J'utilise ici des groupes de TSpeedButton.
En jouant sur les propriétés AllowsAllUp et GroupIndex, on obtient ces 4 possibilités :
- exclusion mutuelle, sélection 0 possible,
- exclusion mutuelle, sélection 0 impossible (comme TRadioButton),
- sélection multiple, sélection 0 possible (comme TCheckBox),
- sélection multiple, sélection 0 impossible(avec un bout de code).
Tout n'est pas optimisé dans mon code, et pas vraiment commenté. Il s'agissait avant tout d'un didacticiel à usage personnel, destiné à la démonstration des 4 possibilités énoncées plus haut. Je vous le livre tel quel...