![]() |
Komma/Punkt
Hi Leute,
Wie kann ich einen Wert in eine Variable einspeichern ohne zu wissen, ob der User "," oder "." benutzt hat. Also so ungefair.....
Code:
VAR abc:real;
Edit1.Text := '1,23'; abc := strToInt(edit1.text); Edit1.Text := '1.23'; abc := strToInt(edit1.text); |
Re: Komma/Punkt
also mit StrToInt gar nicht weil eine Zahl mit einem Nachkommaanteil kein Integer sondern ein Floatwert ist. Ansonsten kannst du mit StringReplace einfach Punkt und Komma durch DecimalSeperator ersetzen.
|
Re: Komma/Punkt
Oder die Konstante kurzzeitig Umstellen.
|
Re: Komma/Punkt
FloatToStr und StrToFloat haben ein Version mit Ländereinstellungen. Dies wurde schon mehrfach im Forum besprochen. Bemühe doch bitte die Suche und/oder die Online Hilfe:roteyes:
|
Re: Komma/Punkt
Zitat:
|
Re: Komma/Punkt
hi leute,
danke für eure Hilfe... Ich hab es jetzt folgendermaßen gelöst: - DecimalSeperator := '.'; - alle Kommas in Punke umgeformt Es ist jetzt also egal, ob man Komma oder Punkt benutzt. Vielen Dank, Arukas |
Re: Komma/Punkt
Zitat:
|
Re: Komma/Punkt
Und was machst Du mit gemischten Eingaben mit Tausendertrennzeichen?
Also zum Beispiel 1.200,65 oder 1,350,723.23? |
Re: Komma/Punkt
Zitat:
|
Re: Komma/Punkt
kannst natürlich auch in OnKeyPress jedes Komma = in Punkt wandeln....
|
Re: Komma/Punkt
Zitat:
Ist dann 1.000.235 gleich Eintausendkommazwodreifünf oder eine Million und zweihunderfünfunddreissig? :mrgreen: |
Re: Komma/Punkt
Zitat:
|
Re: Komma/Punkt
Zitat:
Zitat:
|
Re: Komma/Punkt
Durch Setzen der Separatoren wird aber nichts ersetzt, sondern den Funktion nur gesagt wie die Werte interpretiert werden sollen.
|
Re: Komma/Punkt
*sigh* Ich gebs auf :)
|
Re: Komma/Punkt
Guten Morgen,
abgesehen davon, dass es bei der interaktiven Eingabe normalerweise keine Kolonnenschreibweise gibt, halte ich die Ersetzung der Metazeichen generell für ungeschickt. Die Trennzeichen sind Bestandteil der regional settings und unterliegen der Kontrolle des Benutzers, nicht der Kontrolle des Entwicklers. Die Berücksichtigung von Eingaben, die nicht den Benutzereinstellungen entsprechen, spielt nur bei der Datenumformung (Import / Export) eine Rolle. Grüße vom marabu |
Re: Komma/Punkt
Marabu, wenn Du wüßtest, was Leute so alles eintippen... Das fängt ja schon bei simplen Lizenzkeys an. Wir hatten damals im Support tonnenweise Leute, die nicht lesen können ;) Trotz wunderbar klar gesetzter Druckweise konnten die Leute so Sachen wie 2 und Z, 5 und S, 0 und O oder 1 und I nicht auseinanderhalten.
Wir haben das dann irgendwann pragmatisch durch ein modifiziertes Keysystem gelöst - wir benutzen halt keine 2, 5, O und I mehr und das Programm wandelt die bekannten Vertipper erstmal entsprechend um bevor der eigentliche Test auf einen gültigen Lizenzkey erfolgt. An der selben Stelle werden auch die üblichen Copy&Paste-Fehler erstmal ausgebügelt - uns sparte es VIEL Aufwand im Support und der Kunde freut sich ;) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz