Bonjour à tous,

Je cherche à ajouter un composant TCheckBox au début de chaque ligne d'un TStringGrid. J'ai fait comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
procedure chkOnClick(Sender : TObject);
begin
  ShowMessage('Test');
end;
 
procedure createCheckBox(Sender : TObject);
  for i := 1 to StringGrid.Rowcount-1 do begin
    chk := TCheckBox.Create(StringGrid);
    chk.Parent := StringGrid;
    chk.Top := StringGrid.CellRect(0,i).Top + 2;
    chk.Width := StringGrid.ColWidths[0];
    chk.Caption := IntToStr(i);
    chk.OnClick := chkOnClick;
  end;
Avec ceci, les checkbox se crééent sans problème mais sont inutilisables. Si j'en clic un, il ne se coche pas...

Avez-vous une idée ? Est-ce qu'il faut utiliser l'évènement "OnDrawCell" du StringGrid pour redessiner le checkbox coché ?

Merci pour votre aide...