Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#12

Re: Zahlen überprüfen --> keine darf doppelt

  Alt 29. Jun 2007, 20:40
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
  Mit Zitat antworten Zitat