Hi waldforest
Ich würde das grundsätzlich anders lösen - Die Prozedur gehört meiner ersten Reaktion nach nicht in OnDrawCell:
Delphi-Quellcode:
Type TFeldnamemn = ('VK_1_MENGE','VK_2_MENGE','VK_3_MENGE','VK_4_MENGE','VK_5_MENGE','VK_6_MENGE');
TBigest = record
Wert : dein Datentyp;
ARow: Integer;
ACol: Integer;
end;
...
...
private
...
FBigest: TBigest;
...
...
procedure TForm1.jvdbgrd_GridDrawColumnCell;
Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
var
I, J: Integer;
str_feld : string ;
begin
for i := 0 to jvdbgrd.row.Count -1 do
begin
for j := 0 to jvdbgrd.col.Count -1 do
begin
(Nun liest du den Wert der Zelle und belegst Bigest.Wert damit, sofern deren Wert kleiner ist.)
(Gleichzeitig musst du die Koordinaten der Zelle in Bigest ARow und Bigest ACol speichern.I)
end;
end;
end;
ColorToBigestValueField;
In einer 2. Reaktion kann sie da bleiben. Alles, was tu tn musst, ist, zu prüfen, ob der Spaltentitel in TFeldnamen vorkommt. Wenn ja, wird, wie oben gezeigt, der Wert in den Record geschri
ColorToBigestValueField ist eine Prozedur, die das im Record angegebene Feld des Grid im Nachinein einfärbt. Die habe ich jetzt allerdings nicht entworfen.
Gruss
Delbor
PS:
Zitat:
einer DBGrid Zeile
Ups, da hab ich doch tatsächlich Zelle gelesen, wo Zeile stand - es bräuchte also einne Anpassung. Aber das Prinzip ändert sich nicht