TDrawGrid
From Free Pascal wiki
Jump to navigationJump to search
│
English (en) │
français (fr) │
русский (ru) │
TDrawGrid is a component on the Additional tab of the Component Palette. A DrawGrid provides a tabular display of graphical information. The developer is responsible for providing the code for drawing.
Therefore, unlike other grid types, TDrawGrid requires implementing the following properties:
- OnDrawCell(Sender: TObject; aCol, aRow: Integer; aRect: TRect; aState: TGridDrawState): Handler for the basic cell painting event
- DefaultDrawing: a boolean property deciding whether or not OnDrawCell has to handle the entire code for cell painting or if the default drawing mechanism is fired in addition.
The following simple example shows how to use OnDrawCell:
procedure TForm1.DrawGrid1DrawCell(Sender: TObject; aCol, aRow: Integer;
aRect: TRect; aState: TGridDrawState);
var
theCanvas: TCanvas;
begin
theCanvas := TDrawGrid(Sender).Canvas;
if odd(aRow) then
begin
if odd(aCol) then
theCanvas.Brush.Color := clRed
else
theCanvas.Brush.Color := clGreen;
end
else
begin
if odd(aCol) then
theCanvas.Brush.Color := clBlue
else
theCanvas.Brush.Color := clYellow;
end;
theCanvas.FillRect(aRect);
end;
The demonstration code in this example fills the content of the cells with different colours, depending on whether the rows or columns are even or odd:
See also