Komma
Verfasst: 14.07.2006 14:12
Wie muss ich das nachfolgende Programm abändern, dass wenn man in StringGadget1 eine Zahl eingibt und dann den Button "Berrechnen" drückt in StringGadget2 eine Zahl mit 2 Stellen hinter dem Komma angezeigt wird? Wenn möglich möchte ich in StringGadget1 auch eine Kommazahl eingeben können.

Code: Alles auswählen
;PB3.94
; ############################
; # #
; # Umrechnen von cm in Zoll #
; # #
; ############################
#String1 = 1
#String2 = 2
#Button1 = 3
#Button2 = 4
Procedure ButtonGadget1_OnClick()
If GetGadgetText(#String1)= ""
MessageRequester("Info","Bitte Zahl eingeben",0)
Else
ErstesString.f = Val(GetGadgetText(#String1))
ZweitesString.f = 2.54
Ergebnis.f = ErstesString.f * ZweitesString.f
SetGadgetText(#String2, Str(Ergebnis.f))
EndIf
EndProcedure
If OpenWindow(0, 362, 234, 300, 300, #PB_Window_SystemMenu, "Umrechnung")
If CreateGadgetList(WindowID())
StringGadget (1, 75, 109, 150,20, "Bitte geben Sie einen Wert ein",#PB_Text_Center)
StringGadget (2, 75, 155, 150, 20, "Ausgabe in Zoll",#PB_Text_Center)
ButtonGadget (3, 110, 215, 80, 24, "Berechnen")
ButtonGadget (4, 110, 267, 80, 24, "Beenden")
EndIf
Repeat
EventID.l = WaitWindowEvent()
LoadFont (1, "Comic Sans MS", 15)
LoadFont (2, "Arial", 10)
If StartDrawing(WindowOutput())
DrawingMode(1)
DrawingFont(UseFont(1))
Locate(90, 5)
DrawText("Umrechnung")
DrawingFont(UseFont(1))
Locate(75, 30)
DrawText("von cm in Zoll ")
DrawingFont(UseFont(2))
Locate(103, 89)
DrawText("Eingabe in cm")
DrawingFont(UseFont(2))
Locate(103, 135)
DrawText("Ausgabe in Zoll")
StopDrawing()
EndIf
If EventID = #PB_EventGadget
Select EventGadgetID()
Case 3
ButtonGadget1_OnClick()
Case 4
EventID = #PB_EventCloseWindow
EndSelect
EndIf
Until EventID = #PB_EventCloseWindow
EndIf
End