hi
Also, alle Abfragen mit onkeypressed sind nur geeignet für Zahlen von 0 - 9, aber was ist mit 164555 ?
dazu Zitat :
Zitat:
Die Routine, die überprüft ob eine Zahl doppelt vorkommt, soll erweiterbar sein.
Mehrstellige Zahlen lassen sich beim Verlassen eines Editfeldes checken, eben auch mit der Pos-Function. Dazu brauchts nur einen kleinen Trick: Die Zahlengrenzen müssen markiert werden. z.B. mit einem Semikolon. Dann wird der String nicht mehr mit '' initialisiert, sondern mit ';'
in der OnExit -Methode prüft man
Delphi-Quellcode:
If Pos(';'+Edit1.Text+';',Zahlenstring)=0 then ZahlenString:=Zahlenstring+Edit1.Text+';'
else Edit1.Text:='';
Soviel zur Erweiterbarkeit und unbekannten Grenzen......
@niels
Natürlich gibt's Arrays und in einem Array [0..9] of Boolean kann ich jede Zahl markieren. Schneller.. hmmm, bei Zahlen von 0 bis 9 vermutlich nur für den PC, nicht für den Anwender, denn der merkt den Unterschied zwischen 3ms und 30 wohl kaum, obwohl da Faktor 10 drin ist.... Aber gut, manchmal machts schon Sinn, Geschwindigkeitsoptimiert zu denken und zu programmieren.
Gruß oldmax
Noch ist mein Rechner mir zu Diensten.... ansonsten habe ich die Macht ihn zu vernichten !