So, ich habe mal mit dem StringGrid ein wenig rumespielt und festgestellt,
daß das OnSetEditText Ereignis zu jedem Tastendruck abgefeuert wird der im EditModus
in einer Zelle getätigt wird. Und das ist denkbar ungünstig zu nutzen um zu überprüfen
ob eine Text/String schon in der Spalte vorhanden ist.
Ist es in Deinem Programm nicht möglich, die Dateneingabe getrennt vom StringGrid zu machen?
Das würde die Suche nach Duplikaten erheblich vereinfachen.
Ich hätte mir das so vorgestellt:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
i:Byte;
gefunden:Boolean;
begin
gefunden:=false;
for i:=0 to StringGrid1.RowCount -1 do
if StringGrid1.Cells[1,i] = edit1.Text then
begin
gefunden:=true;
end;
if not gefunden then
begin
StringGrid1.RowCount := StringGrid1.RowCount +1;
StringGrid1.Cells[1,StringGrid1.RowCount -2]:=Edit1.Text;
end;
end;
Grüße
Klaus