Hi wenn du das schon so machst dann kannst du auch gleich auf Duplikat prüfen ohne dein Array[] of Boolean
Delphi-Quellcode:
function CheckDuplicates(
const Edit: TEdit): Boolean;
var
I: Integer;
Zahl:
String;
begin
Result := False;
if Edit
is TEdit
then
begin
Zahl := AnsiUpperCase(FullTrim(Edit.Text));
with Edit.Parent
do
for I := 0
to ControlCount -1
do
if (Controls[I] <> Edit)
and (Controls[I]
is TEdit)
and AnsiCompareText(FullTrim(TEdit(Controls[I]).Text)), Zahl) = 0
then
Exit;
Result := True;
end;
end;
procedure TForm1.EditChange(Sender: TObject);
// alle TEdit.OnChange verweisen auf diesen Eventhandler
begin
if CheckDuplicates(Sender
as TEdit)
then
with Sender
as TEdit
do
raise Exception.CreateFmt('
Der Wert %s aus %s kommt schon vor', [Text,
Name]);
end;
Gruß Hagen