Autor |
Beitrag |
p4nsen
      
Beiträge: 26
|
Verfasst: Mi 17.12.03 14:52
fogende frage, wie kann ich in meinem progg, dass am dümmsten machen, dass wenn ich deutsche Ländereinstellungen hab es trotzdem akzeptiert wird wenn ein punkt in meiner gleitkommazahl ist und bei englischen das komma akzeptiert wird?
mein programm ist halt in deutsch und englisch, thx im vorraus... hier mal n beispielcode wie ich mir das dachte
also ich brauche halt eine prüfung, ob die eingabe ein gleitkommawert war
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| function FloatOk(Txt : string) : boolean; var ZahlF : double; begin try ZahlF := StrToFloat(Txt); result := true; except result := false; end; end; |
allerdings akzeptiert er hier nur die länderspeziefischen Kommatrennungen (sprich "," oder ".") aber nicht beides....
|
|
Chatfix
      
Beiträge: 1583
Erhaltene Danke: 10
Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
|
Verfasst: Mi 17.12.03 15:02
Da Delphi wenn ich mich recht erinnere mit Punkt arbeitet mach doch einfach
Delphi-Quelltext 1:
| StringReplace(',', '.', Txt); |
Damit ersetzt du das Komme durch den Punkt und somit müsste es ja klappen...
Bei der Ausgabe kannst du ja je nach dem genau so den Punkt wieder ins Komma umwandeln...
_________________ Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
|
|
p4nsen 
      
Beiträge: 26
|
Verfasst: Mi 17.12.03 15:08
Delphi-Quelltext 1:
| StrReplace(',', '.', Txt); |
kanns sein das es das in meiner delphiverison net gitb^^
zumindest wirds vom kompilerr nich anerkannt... oder muss ich erst noch ne bibliothek includieren *kA*
//EDIT
und mein prob is ja was ich festgestellt hab, wenn ich deutsche ländereinstellung hab meckert er bei nem "."
bei englischen akzeptiert er das "," in der geleitkommazahl nich
thx schonma 
Zuletzt bearbeitet von p4nsen am Mi 17.12.03 15:18, insgesamt 3-mal bearbeitet
|
|
Chatfix
      
Beiträge: 1583
Erhaltene Danke: 10
Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
|
Verfasst: Mi 17.12.03 15:10
jo hab mich verbessert es heist StringReplace, sorry
_________________ Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
|
|
p4nsen 
      
Beiträge: 26
|
Verfasst: Mi 17.12.03 15:17
hab oben nochma edit-fkt vorgenommen
*schieb* 
|
|
Chatfix
      
Beiträge: 1583
Erhaltene Danke: 10
Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
|
Verfasst: Mi 17.12.03 15:24
Naja entweder du rufst die sprache aus dem system ab oder du probierst es halt 2 mal, einmal mit punkt und einmal mit komma...
der anwender muss es ja nicht mitbekommen
Und wie du Punkt und Komma tauschen kannst habsch dir ja geschrieben...
Du könntest es ja so machen:
Delphi-Quelltext 1: 2: 3: 4: 5:
| var IsFloat: Boolean; if not FloatOk(StringReplace('.', ',', Edit1.Text)) then IsFloat := FloatOk(StringReplace(',', '.', Edit1.Text)) else IsFloat := True; |
_________________ Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
|
|
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mi 17.12.03 17:13
Tipp mal bitte in den Delphi-Editor DecimalSeparator ein und lass dir die Hilfe dazu anzeigen. Das dürfte die einfachste Variante sein, weil du damit (ggf. eben auch unabhängig von der eingestellten Sprache) das Zeichen für das Komma einstellen kannst.
|
|
Chatfix
      
Beiträge: 1583
Erhaltene Danke: 10
Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
|
Verfasst: Mi 17.12.03 17:48
Kuhl, das wusste ich auch noch nicht...
Ich sag ja man kann nur lernen^^
_________________ Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
|
|
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mi 17.12.03 19:26
Man ist stets gern zu Diensten. 
|
|
|