Hat die TStringList nicht ein Property mit dem man keine doppelten Einträge zulässt?
Ahhh... gefunden:
duplicates => das kann man auf duperror setzen und schon gibt es bei .add einen Fehler wenn ein Eintrag schon vorhanden ist
Die Eigenschaft Duplicates legt fest, ob zu einer sortierten Liste String-Duplikate hinzugefügt werden können.
Delphi-Syntax:
property Duplicates: TDuplicates;
C++ Syntax:
__property TDuplicates Duplicates = {read=FDuplicates, write=FDuplicates, nodefault};
Beschreibung
Mit Duplicates können Sie festlegen, welche Aktion ausgeführt werden soll, wenn ein String mehrfach zu einer sortierten Liste hinzugefügt wird. Die Eigenschaft CaseSensitive steuert, ob zwei Strings, die sich nur hinsichtlich der Groß-/Kleinschreibung unterscheiden, als identisch angesehen werden.
Duplicates kann einen der folgenden Werte erhalten:
Wert Bedeutung
dupIgnore Das Einfügen von Duplikaten in die Liste wird ignoriert.
dupError Der Versuch, der sortierten Liste ein String-Duplikat hinzuzufügen, führt zu einer EStringListError-
Exception.
dupAccept Duplikate sind in der sortierten Liste zulässig.
Setzen Sie Duplicates, bevor Sie der Liste Strings hinzufügen. Wenn Sie Duplicates auf dupIgnore oder dupError setzen, hat das keine Auswirkungen auf doppelte Strings, die bereits in der Liste enthalten sind.
Hinweis: Duplicates hat keinerlei Auswirkungen, wenn die Liste nicht sortiert ist.
Es ist unmöglich, witzig zu sein ohne ein bisschen Bosheit. Die Bosheit eines guten Witzes ist der Widerhaken, der ihn haften lässt. - Georg Christoph Lichtenberg