Nungut aber das Problem wird keine Sprache los werden, außer sie lagern die Texte extern aus oder Komprimieren die Irgendwie.
Code: Alles auswählen
Enumeration
#Window_0
#Text_0
#Text_1
#Text_2
#Text_3
#Text_4
#Text_6
#Text_7
#String_0
#String_1
#Combo_0
#Combo_1
#Button_0
#Button_1
#ListIcon_1
EndEnumeration
Procedure Open_Window_0()
If OpenWindow(#Window_0, 490, 315, 665, 721, "Kreditzinsrechner von The_Dark_Zim-.-", #PB_Window_SystemMenu | #PB_Window_TitleBar )
TextGadget(#Text_0, 250, 15, 100, 15, "Monatilicher Beitrag")
TextGadget(#Text_1, 20, 15, 130, 15, "Kreditsumme")
TextGadget(#Text_2, 490, 15, 70, 15, "Zinssatz")
TextGadget(#Text_3, 135, 32, 20, 15, "€")
TextGadget(#Text_4, 360, 32, 20, 15, "€")
TextGadget(#Text_6, 605, 32, 30, 25, "%")
TextGadget(#Text_7, 543, 33, 10, 20, ",")
StringGadget(#String_0, 20, 30, 110, 20, "", #PB_String_Numeric)
StringGadget(#String_1, 250, 30, 105, 20, "", #PB_String_Numeric)
ComboBoxGadget(#Combo_0, 490, 30, 50, 20)
ComboBoxGadget(#Combo_1, 550, 30, 50, 20)
ButtonGadget(#Button_0, 15, 65, 565, 40, "Los Gehts")
ButtonGadget(#Button_1, 587, 65, 60, 40, "?")
ListIconGadget(#ListIcon_1, 15, 120, 635, 590, "Jahr", 100, #PB_ListIcon_FullRowSelect)
AddGadgetColumn(#ListIcon_1, 1, "Monat", 100)
AddGadgetColumn(#ListIcon_1, 2, "Insgesamt noch zu zahlen", 100)
AddGadgetColumn(#ListIcon_1, 3, "Bereits gezahl", 100)
EndIf
EndProcedure
Procedure FillDropdowns()
For i = 0 To 99
AddGadgetItem(#Combo_1, -1, Str(i) )
If i < 51
AddGadgetItem(#Combo_0, -1, Str(i) )
EndIf
Next
SetGadgetState(#Combo_0, 0)
SetGadgetState(#Combo_1, 0)
EndProcedure
Procedure Berechne()
ClearGadgetItems(#ListIcon_1)
Kreditsumme.d = ValD(GetGadgetText(#String_0))
Beitrag.d = ValD(GetGadgetText(#String_1))
Zinssatz.d = Val(GetGadgetText(#Combo_0)) + Val(GetGadgetText(#Combo_1)) / 100
Monat = 1
MonateInsgesamt = 1
Jahr = 1
AddGadgetItem(#ListIcon_1, -1, "-" + Chr(10) + "-" + Chr(10) + Str( Kreditsumme ) + Chr(10) + "-")
Kreditsumme + Kreditsumme / 100 * Zinssatz
While Kreditsumme > 0
If Jahr > 50
MessageRequester("Abbruch", "Der Kredit wurde nach 50 Jahren" + Chr(13) + "immer noch nicht abbezahlt!")
ProcedureReturn
EndIf
AddGadgetItem(#ListIcon_1, -1, Str( Jahr ) + "." + Chr(10) + Str( Monat ) + ". (" + Str( MonateInsgesamt ) + ")" + Chr(10) + StrD( Kreditsumme, 2 ) + "€" + Chr(10) + StrD( Gezahlt.d, 2 ) + "€" )
If Monat = 12
Monat = 1
Jahr + 1
Kreditsumme + Kreditsumme / 100 * Zinssatz
Else
Monat + 1
EndIf
MonateInsgesamt + 1
Kreditsumme - Beitrag
Gezahlt.d + Beitrag
Wend
AddGadgetItem(#ListIcon_1, -1, Str( Jahr ) + "."+ Chr(10) + Str( Monat ) + ". (" + Str( MonateInsgesamt ) + ")" + Chr(10) + "-" + Chr(10) + StrD( Kreditsumme + Gezahlt.d, 2 ) + "€" )
If Monat = 12
MessageRequester("Ergebnis", "Die Kreditlaufzeit beträgt " + Str(Jahr + 1) + " Jahre!")
Else
MessageRequester("Ergebnis", "Die Kreditlaufzeit beträgt " + Str(Jahr) + " Jahre und " + Str(Monat) + " Monate!")
EndIf
EndProcedure
Open_Window_0()
FillDropdowns()
Repeat
Event = WaitWindowEvent(10)
WindowID = EventWindow()
GadgetID = EventGadget()
EventType = EventType()
If Event = #PB_Event_Gadget
If GadgetID = #Button_0
If GetGadgetText(#String_0) <> "" And GetGadgetText(#String_1) <> ""
If ValD(GetGadgetText(#String_0)) > ValD(GetGadgetText(#String_1))
Berechne()
Else
MessageRequester("Achtung", "Der Beitrag muss kleiner als die Kreditsumme sein!")
EndIf
Else
MessageRequester("Achtung", "Sie müssen alle Felder ausfüllen!")
EndIf
ElseIf GadgetID = #Button_1
MessageRequester("Kreditzinsrechner", "Politik Hausaufgabe zum 30.01.2013" + Chr(13) + "von The_Dark_Zim-.-")
EndIf
Else
Delay(1)
EndIf
Until Event = #PB_Event_CloseWindow
und wie gesagt selbe Software in Delphi ist schon 2 MB groß ...