Startseite › Foren › Deutsches LiveCode-Forum › Datagrid – auslesen › Antwort auf: Datagrid – auslesen
OK, da ich beim Programmieren nich nue Zeit und Gedulg aufgewendet habe, um herauszufinden, warum etwas ncuht funktionert, wenn es doch einen Workaround gibt, hab ich mich and die Funktion format() in LC erinnert.
Die macht genau das, was wir benötigen, nämlich X Nachkommestellen DAUERHAFT zu erzwingen!
Ich habe die Vermutung „numberformat“ ist eine irgendwie „flüchtige/rtemporäre“ Angelegenheit.
Da diese funktion aus der Sprache C kommt, ist ihre Syntax leider uach etwas kryptisch.
Hier mnein obiges Beispielskript nun mit FORMAT():
on mouseUp pMouseButton
put 10 into menge
put "2,3" into preis
#set the numberformat to 0.00 # 2 Dezimalstellen
put ohne_komma(menge) into menge
put ohne_komma(preis) into preis
put menge * preis into ergebnis
put format("%1.2f",ergebnis) into ergebnis
answer mit_komma(ergebnis)
end mouseUp
Das f bedeutet, wir möchten eine FLOATING Number (also eine Zahl mit Nachkommastellen haben)
Und die 2 davor, daß wir genau ZWEI Nachkommastellen haben möchten.
Du kannst das auch schachteln, aber das ist nicht besonders leserlich 😀
…
put ohne_komma(menge) into menge
put ohne_komma(preis) into preis
put mit_komma(format(„%1.2f“,menge * preis)) into fld „ergebnis“
…
Gruß
Klaus
