procedure DrawCell(ACol, ARow: Integer; ARect: TRect;
AState: TGridDrawState);
Az eljárás első két paraméterében kapjuk az adott cella X, Y koordinátáját. Az ARect paraméterből megtudhatjuk, hogy az adott cellának mekkora a területe. A kirajzolás elvégzésekor ezt feltétlenül vegyük figyelembe, hogy grafikánk ne csússzon bele egy másik cellába. Az AState paraméterből megtudhatjuk a cella aktuális állapotát. Ezt felhasználva eldönthetjük például azt, hogy az aktuálisan megjelenítendő cella fix-e vagy sem. Ha fix, akkor a kirajzolást az ős osztálybeli DrawCell-re bízzuk.
if gdFixed in AState then begin
inherited DrawCell(ACol, ARow,ARect,AState);
end else begin
...
end;
Ha viszont nem, akkor először megjelenítjük a szükséges színátmenetet, majd erre ráírjuk az adott cella szövegét.