Récupérer l'état d'une checkbox et remplir une TList

Résolu
nathalg - 31 déc. 2013 à 17:02
 nathalg - 2 janv. 2014 à 16:52
Bonjour,
Je sais que ce n'est pas dutout le moment, vu que tout le monde doit être occupé par les prépas du nouvel an.Je vais comme même exposer mon problème en cas où.
Je souhaiterai donc remplir une TList avec l'état actuel de 12 checkboxs.
Càd que si je configure mes 12 checkboxs en ordre comme suit:
True, True,False,True,False,False,True,True,False,False,False et True. Ma Tlist se remplit comme suit:
2,2,1,2,1,1,2,2,1,1,1 et 2.

Sachant que ma TList se remlit avec le principe de:

Si checkbox cochée: ContenuTlist = 2;
Si checkbox pas cochée: ContenuTlist = 1;

En même temps, il faut que le contenu de ma list s'actualise en fonction de si je coche ou pas la checkbox.

Je vous serai vraiment reconnaissante de votre aide.

Bonne fête de din d'année.

4 réponses

dubois77
Messages postés
675
Date d'inscription
jeudi 17 avril 2008
Statut
Membre
Dernière intervention
19 février 2019
14
31 déc. 2013 à 18:07
Salut
Tu remplis d'abord tal liste avec 12 fois '1' (vide par défaut)

pour chaque checkBox tu crée une procédure Onchange (en cliquant dessus dans l'EDI
ce qui donne ceci (pour les 3 premiers) :
procedure TForm1.Check1Click(Sender: TObject);
begin
if Check1.Checked
then Liste.Items[0] := '2'
else Liste.Items[0] := '1';
end;

procedure TForm1.Check2Click(Sender: TObject);
begin
if Check2.Checked
then Liste.Items[1] := '2'
else Liste.Items[1] := '1';
end;

procedure TForm1.Check3Click(Sender: TObject);
begin
if Check3.Checked
then Liste.Items[2] := '2'
else Liste.Items[2] := '1';
end;

(le numéro de ligne d'un Tlist commence à 0 d'ou le décalage)
0