hier habe ich mal alles eingebunden. Die Änderungen habe ich kenntlich gemacht.
Code: Alles auswählen
Enumeration
#Window_0
EndEnumeration
;- Gadget Constants
;
Enumeration
#Button_0
#Button_loeschen
#Button_Close
#Button_drucken
#String_0
#String_1
#String_2
#String_3
#String_4
#STRING_5
#TString_0
#TString_1
#TString_2
#TString_3
#TString_4
#TString_5
#TString_6
#TString_7
#TString_8
#STRING_INPUT
#STRING_INPUT_1
#STRING_INPUT_2
;#MB_ICONEXCLAMATION
EndEnumeration
#MB_ICONEXCLAMATION = 48
#CRLF$ = Chr(13)+Chr(10)
; Änderung Anfang ----------------------------------------
Prototype InitMessages(hwnd, flags)
Global InitMessages.InitMessages
Procedure InitNEdit()
Protected dll = OpenLibrary(#PB_Any, "NEdit.dll")
If dll
InitMessages = GetFunction(dll, "InitMessages")
If InitMessages
ProcedureReturn #True
EndIf
EndIf
EndProcedure
; Änderung Ende ------------------------------------------
LoadFont(0, "Arial", 20)
LoadFont(1, "Arial", 24)
Procedure ergebnisloeschen()
If (EventType()=#PB_EventType_LostFocus)
aFeld=EventGadget()
; Änderung Anfang ----------------------------------------
iFeld$ = ReplaceString(GetGadgetText(aFeld),",",".") ; Komma in Punkt tauschen
SetGadgetText(aFeld,iFeld$)
; Änderung Ende ------------------------------------------
If (Len(iFeld$)>0) And (Len(iFeld$)<2)
MessageRequester("InfoBox", "Zahl zu klein! Mindestens 2 Stellen!") ; #MB_ICONEXCLAMATION)
SetActiveGadget(aFeld)
SetGadgetText(#STRING_INPUT_2, ("Eingabe FALSCH!"))
SetGadgetColor(#STRING_INPUT_2, #PB_Gadget_BackColor,$3300FF)
ElseIf (Len(iFeld$)>4)
MessageRequester("InfoBox", "Zahl zu groß! Maximal 4 Stellen!") ; #MB_ICONEXCLAMATION)
SetGadgetText(aFeld,"")
SetActiveGadget(aFeld)
SetGadgetText(#STRING_INPUT_2, ("Eingabe FALSCH!"))
SetGadgetColor(#STRING_INPUT_2, #PB_Gadget_BackColor,$3300FF)
EndIf
Else
For n=#string_0 To #String_5
SetGadgetColor(n, #PB_Gadget_BackColor, -1)
Next n
SetGadgetColor(GetActiveGadget(), #PB_Gadget_BackColor,$00FFFF)
SetGadgetText(#STRING_INPUT, "")
SetGadgetText(#STRING_INPUT_1, "")
EndIf
SetGadgetText(#STRING_INPUT,"")
SetGadgetColor(#STRING_INPUT, #PB_Gadget_BackColor,$FFFFFF)
SetGadgetText(#STRING_INPUT_1,"")
SetGadgetColor(#STRING_INPUT_1, #PB_Gadget_BackColor,$FFFFFF)
EndProcedure
If OpenWindow(#Window_0, 248, 16, 730, 642, "Mittelwertrechner", #PB_Window_SystemMenu | #PB_Window_ScreenCentered| #PB_Window_SizeGadget | #PB_Window_TitleBar )
SetWindowColor(#Window_0,$FFFFFF)
SetGadgetFont(#TString_0, FontID(0))
ButtonGadget(#Button_0, 250, 500, 100, 50, "Berechnen")
ButtonGadget(#Button_loeschen, 425, 500, 100, 50, "Löschen")
ButtonGadget(#Button_Close, 600, 500, 100, 50, "Schließen")
TextGadget(#TString_1, 40, 30, 160, 20, "Zahl 1 eingeben")
StringGadget(#String_0, 40, 50, 160, 60, "", #PB_String)
SetGadgetFont(#String_0, FontID(0))
TextGadget(#TString_2, 40, 120, 160, 20, "Zahl 2 eingeben")
StringGadget(#String_1, 40, 140, 160, 60, "", #PB_String)
SetGadgetFont(#String_1, FontID(0))
TextGadget(#TString_3, 40, 210, 160, 20, "Zahl 3 eingeben")
StringGadget(#String_2, 40, 230, 160, 60, "", #PB_String)
SetGadgetFont(#String_2, FontID(0))
TextGadget(#TString_4, 40, 300, 160, 20, "Zahl 4 eingeben")
StringGadget(#String_3, 40, 320, 160, 60, "", #PB_String_Numeric)
SetGadgetFont(#String_3, FontID(0))
TextGadget(#TString_6, 40, 390, 160, 20, "Zahl 5 eingeben")
StringGadget(#String_4, 40, 410, 160, 60, "", #PB_String_Numeric)
SetGadgetFont(#String_4, FontID(0))
TextGadget(#TString_7, 40, 480, 160, 20, "Zahl 6 eingeben")
StringGadget(#String_5, 40, 500, 160, 60, "", #PB_String_Numeric)
SetGadgetFont(#String_5, FontID(0))
TextGadget(#TString_5, 250, 300, 280, 20, "Mittelwert.d der Eingaben")
StringGadget(#STRING_INPUT, 250, 320, 450, 50,"", #PB_String_Numeric)
SetGadgetFont(#STRING_INPUT, FontID(1))
TextGadget(#TString_8, 250, 380, 280, 20, "Mittelwert.d x100")
StringGadget(#STRING_INPUT_1, 250, 400, 450, 50,"", #PB_String_Numeric)
TextGadget(#STRING_INPUT_2, 250, 150, 130, 100,"", #PB_Text_Border)
SetGadgetFont(#STRING_INPUT_2, FontID(0))
; Änderung Anfang ----------------------------------------
If InitNEdit()
For n=#string_0 To #String_5
InitMessages(GadgetID(n), 5)
SetActiveGadget(n)
Next n
SetActiveGadget(#Button_0)
EndIf
; Änderumg Ende ------------------------------------------
Repeat
iEvent.i = WaitWindowEvent()
Select iEvent
Case #PB_Event_Gadget
Select EventGadget()
Case #Button_0
SetControl=0
eingabe1$=GetGadgetText(#String_0)
eingabe2$=GetGadgetText(#String_1)
eingabe3$=GetGadgetText(#String_2)
eingabe4$=GetGadgetText(#String_3)
eingabe5$=GetGadgetText(#String_4)
eingabe6$=GetGadgetText(#STRING_5)
If (eingabe1$<>"")
SetGadgetText(#String_0,"")
EndIf
If (eingabe1$<>"")
Teiler + 1
Mittelwert.d = ValD(eingabe1$)
Else
If SetControl=0
MessageRequester("Eingabefehler","Feld 1 muß ausgefüllt werden!")
SetControl=1
EndIf
EndIf
If (eingabe2$<>"")
Teiler + 1
Mittelwert.d + ValD(eingabe2$)
Else
If SetControl=0
MessageRequester("Eingabefehler","Feld 2 muß ausgefüllt werden!")
SetControl=1
EndIf
EndIf
If (eingabe3$<>"")
Teiler + 1
Mittelwert.d + ValD(eingabe3$)
Else
If SetControl=0
MessageRequester("Eingabefehler","Feld 3 muß ausgefüllt werden!")
SetControl=1
EndIf
EndIf
If (eingabe4$<>"")
Teiler + 1
Mittelwert + ValD(eingabe4$)
Else
If SetControl=0
MessageRequester("Eingabefehler","Feld 4 muß ausgefüllt werden!")
SetControl=1
EndIf
EndIf
If (eingabe5$<>"")
Teiler + 1
Mittelwert + ValD(eingabe5$)
Else
If SetControl=0
MessageRequester("Eingabefehler","Feld 5 muß ausgefüllt werden!")
SetControl=1
EndIf
EndIf
If (eingabe6$<>"")
Teiler + 1
Mittelwert + ValD(eingabe6$)
Else
If SetControl=0
MessageRequester("Eingabefehler","Feld 6 muß ausgefüllt werden!")
SetControl=1
EndIf
EndIf
If Teiler=6
SetGadgetText(#STRING_INPUT,StrD(Mittelwert.d/Teiler))
a1.d = Mittelwert.d / Teiler * 100
Mittel100 = Round(a1, #PB_Round_Up)
SetGadgetText(#STRING_INPUT_1,Str(Mittel100))
SetGadgetColor(#STRING_INPUT_1, #PB_Gadget_BackColor,$00FFFF)
SetGadgetText(#STRING_INPUT_2, ("Eingabe in Ordnung"))
SetGadgetColor(#STRING_INPUT_2, #PB_Gadget_BackColor,$00FF00)
Else
MessageRequester("Fehler","Es müssen alle Felder korrekt ausgefüllt werden!")
EndIf
Teiler=0
Case #Button_loeschen
SetGadgetText(#String_0,"")
SetGadgetText(#String_1,"")
SetGadgetText(#String_2,"")
SetGadgetText(#String_3,"")
SetGadgetText(#String_4,"")
SetGadgetText(#STRING_5,"")
SetGadgetText(#STRING_INPUT_2,"")
SetGadgetColor(#STRING_INPUT_2, #PB_Gadget_BackColor,$FFFFFF)
ergebnisloeschen()
Case #String_0
ergebnisloeschen()
Case #String_1
ergebnisloeschen()
Case #String_2
ergebnisloeschen()
Case #String_3
ergebnisloeschen()
Case #String_4
ergebnisloeschen()
Case #STRING_5
ergebnisloeschen()
Case #STRING_INPUT
SetGadgetColor(#STRING_INPUT, #PB_Gadget_BackColor,$00FFFF)
Case #BUTTON_CLOSE
Quit = #True
EndSelect
EndSelect
Until iEvent = #PB_Event_CloseWindow Or Quit = #True
EndIf
End
, uuuiihhh, da hatte ich im Eifer des Gefechts ja ganz was vergessen.
Hast ja recht.