Bonjour à tous
dans une dbgrid j'ai une colonne avec des prix.
j'ai une fonction qui additionne ces prix.
j'ai une colonne avec bouton type checkboxcolumn.
je voudrais que ma fonction n'additionne que les lignes checkées.
Avec la fonction je ferai si ligne checkée , je saute la ligne.
le problème , j'ai ce code mais si je clique sur une checkbox rien ne se passe, l'état ne change pas. La colonne avec la chexkox correspond à la colonne de ma dbf type ftboolean.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 procedure TForm1.DBGrid1UserCheckboxState(Sender: TObject; Column: TColumn; var AState: TCheckboxState); begin if RecList.CurrentRowSelected then AState := cbChecked else AState := cbunchecked; end; procedure TForm1.DBGrid1CellClick(Column: TColumn); begin if Column.Index=1 then RecList.CurrentRowSelected := not RecList.CurrentRowSelected; end
avec RecList := TBookmarkList.Create(DbGrid1) dans TForm.create et dans
type
private
RecList: TBookmarklist;
je pense qu'au niveau de " if RecList.CurrentRowSelected " il faut une autre condition, j'ai essayé avec l'index de la colonne checkbox mais rien.
Partager