Bonjour,
La question à du être posée 100 fois mais je n'arrive pas à comprendre comment fonctionne OnDrawCell.
Avec la procédure ci-dessous j'ai soit tous les textes de ma colonne 4 en rouge si la valeur de la dernière cellule est négatif ou en bleue si c'est positif.
Ce que je veux faire c'est avoir la valeur inscrite dans la cellule en bleu si c'est positif et rouge si c'est négatif et ça cellule par cellule (dans la colonne 4)
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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 procedure Tcompte.tableauDrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); begin with Sender as TStringGrid do with Canvas do begin //Sélection de la couleur de fond if gdFixed in State then Brush.Color := clBtnFace else if gdSelected in State then Brush.Color := clWhite else Brush.Color := clWhite; // Dessin du fond FillRect(Rect); //Sélection de la couleur de texte if (Acol=4) and (enregcompte.solde_tempo>=0) Then begin Font.Color:=clblue; TextOut(Rect.Left,Rect.Top,Cells[ACol,ARow]); end; if (Acol=4) and (enregcompte.solde_tempo<0) then begin Font.Color:=clRed; TextOut(Rect.Left,Rect.Top,Cells[ACol,ARow]); end; if Acol<>4 then begin Font.Color:=clBlack; TextOut(Rect.Left,Rect.Top,Cells[ACol,ARow]); end; end; end;
Partager