Hallo,
wie wäre es mit der Eigenschaft TStringGrid.Objects?
Du könntest Dir eine Klasse (z. B. TFormat) bauen, die Deine Zellenformatierung speichert und jeweils eine Instanz dieser Klasse jeder zu formatierenden Zelle zuordnen.
Dann könntest Du in OnDrawCell
Delphi-Quellcode:
var
f : TFormat;
begin
f := TFormat (StringGrid1.Objects [ACol, ARow]);
if Assigned (f) then
begin
StringGrid1.Canvas.Font.Color := f.Color;
StringGrid1.Canvas.Font.Style := f.Style;
// usw.
end
end;
die Zellen entsprechend formatiert ausgeben.
Du darfst natürlich nicht vergessen den belegten Speicher beim "Aufräumen" wieder freizugeben.
Gruß