1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| // Procédure permettant de dessiner les cases à cocher dans la colonne SAV du DBGridScan
procedure AfficheCaseSav(const Rectangle: TRect; maCol : TColumn; monDB : TDBGrid; monJeuDImages : TImageList; colData : Integer; monEtat : TGridDrawState, Send : TObject);
begin
// On ne prend en compte que la colonne SAV
if sameText(maCol.FieldName, 'SAV') then
begin
{ On efface la cellule }
monDB.Canvas.FillRect(Rectangle);
{ Cochée ou Pas ?}
monJeuDImages.Draw(monDB.Canvas,
Rectangle.Left + ((Rectangle.Right - Rectangle.Left - monJeuDImages.Width) div 2),
Rectangle.Top,
Ord(monDB.Fields[3].AsString = '0')
);
end
{ si column ne correspond pas à une case à cocher, }
{ on ne s'occupe pas du dessin de la cellule, on }
{ transmet donc à DefaultDrawColumnCell }
else
begin
monDB.DefaultDrawColumnCell(Rectangle, colData, maCol, monEtat);
end;
end; |