Hallo Community, ich habe folgendes Problem. Ich möchte , das sich in einem Stringgrid die Farbe der Zelle ändert , sobald man eine Eingabe gemacht hat, die den Kriterien nicht entspricht. Hab mir alles schon durchgelesen was ich bei der Suche finden konnte , hab es mit Drawcell usw versucht , jedoch habe ich nur 2 extreme bei all meinen Versuchen die Codes einzubauen. Entweder färbt sich alles rot , oder garnichts. Das ganze sieht so aus:
Delphi-Quellcode:
with (Sender as TStringGrid) do
begin
if (ACol <=0 and ACol >=4)
then
for j:=1 to 5
do begin
for i:=1 to Notentabelle.RowCount
do Notentabelle.Cells[j,i]:='0';
end;
for j:=1 to 5
do begin
for i:=1 to Notentabelle.RowCount
do begin
if (StrToInt(Notentabelle.Cells[j,i]) >= 0) and (StrToInt(Notentabelle.Cells[j,i]) <= 4)
then Canvas.Brush.Color:=clred
else if ((StrToInt(Notentabelle.Cells[j,i]) > 0)) or (StrToInt(Notentabelle.Cells[j,i]) < 15)
then begin
ShowMessage('Unzulässige Note');
Notentabelle.Cells[j,i]:='0';
end;
end;
end;
Diese Version funktioniert jetzt garnichtmehr , ihr sollt sie mir auch nicht komplett verbessern , ich wäre nur froh , wenn mir einer sagen kann wo der grundsätzliche Fehler in dem ganzen ist.
Und bitte verweist mich nicht auf die Suche , ich hab mir echt jeden Artikel zu dem Thema durchgelesen , es nützt nichts
vielen dank für konstruktive Vorschläge im Vorraus.