Taschengeld Manager

  • Hallo!

    Ich habe hier mal ein wirkliches simples programm geschrieben um seine Finanzen (eher noch im Taschengeld Alter) im Überblick zu haben!

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    #NoTrayIcon
    #include <GUIConstants.au3>
    #include <File.au3>

    [/autoit] [autoit][/autoit] [autoit]

    If Not FileExists(@TempDir & "\Lennart's\actions.txt") Then
    _FileCreate(@TempDir & "\Lennart's\actions.txt")
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    $Kst = RegRead("HKEY_CURRENT_USER\SOFTWARE\Lennart's\Lennart's Finanzen Manager\", "Kontostand")

    [/autoit] [autoit][/autoit] [autoit]

    If $Kst = "" Then
    $InBo = InputBox("Ersparnisse", "Meine aktuellen Ersparnisse liegen bei wie viel Euro ?")
    RegWrite("HKEY_CURRENT_USER\SOFTWARE\Lennart's\Lennart's Finanzen Manager\", "Kontostand", "REG_SZ", $InBo)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    $Kontostand = RegRead("HKEY_CURRENT_USER\SOFTWARE\Lennart's\Lennart's Finanzen Manager\", "Kontostand")

    [/autoit] [autoit][/autoit] [autoit]

    $Title = $Kontostand

    [/autoit] [autoit][/autoit] [autoit]

    $Form1 = GUICreate("Kontostand: " & $Title, 274, 290, 193, 125)
    GUISetBkColor(0xFFFFFF)
    $Label1 = GUICtrlCreateLabel("Meine Finanzen 2008 :D", 16, 16, 241, 24)
    GUICtrlSetFont(-1, 12, 800, 4, "MS Sans Serif")
    $Label2 = GUICtrlCreateLabel("Aktuelle Finanzlage:", 16, 72, 124, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Label3 = GUICtrlCreateLabel($Kontostand & " Euro", 160, 72, 94, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Label4 = GUICtrlCreateLabel("Einkommen/Grund:", 8, 152, 118, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Input1 = GUICtrlCreateInput("", 136, 152, 41, 24)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Input2 = GUICtrlCreateInput("", 176, 152, 89, 24)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Label6 = GUICtrlCreateLabel("Ausgaben/Grund:", 8, 216, 103, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Input3 = GUICtrlCreateInput("", 136, 216, 41, 24)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Input4 = GUICtrlCreateInput("", 176, 216, 89, 24)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Label5 = GUICtrlCreateLabel("-----------------------------------------------------------------------------------------", 0, 104, 271, 17)
    $Button1 = GUICtrlCreateButton("Fertig", 8, 256, 185, 25, 0)
    $Button2 = GUICtrlCreateButton("Action Log", 200, 256, 65, 25, 0)
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit]

    #cs

    Script Startet

    #ce

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    $plus = GUICtrlRead($Input1)
    $minus = GUICtrlRead($Input3)
    $erg = $plus - $minus
    RegWrite("HKEY_CURRENT_USER\SOFTWARE\Lennart's\Lennart's Finanzen Manager\", "Kontostand", "REG_SZ", $Kontostand + $erg)
    $Kontostand = RegRead("HKEY_CURRENT_USER\SOFTWARE\Lennart's\Lennart's Finanzen Manager\", "Kontostand")
    GUICtrlSetData($Label3, $Kontostand & " Euro")
    $file = FileOpen(@TempDir & "\Lennart's\actions.txt", 1)
    $Gp = GUICtrlRead($Input2)
    $Gm = GUICtrlRead($Input4)
    FileWrite($file, @CRLF & @CRLF & @MDAY & "." & @MON & "." & @YEAR & " = " & $plus & "€ Grund+: " & $Gp & " ||| " & $minus & "€ Grund-: " & $Gm)
    FileClose($file)
    Case $Button2
    ShellExecute(@TempDir & "\Lennart's\actions.txt")
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit][/autoit]



    *- Eingabe von Einkommen / Ausgaben
    *- Eingabe des Grundes
    *- Das ganze wird geloggt und ist später wieder abrufbar
    *- Einfach zu bedienen


    Ich werde es nach und nach erweitern! Es wäre super wenn ihr mir verbesserungs Vorschläge nennen könntet!

    Mfg Lenny!

    Jaja, Moo does the Cow!

    4 Mal editiert, zuletzt von Lenny (7. Juli 2008 um 16:16)

  • Guggus Lenny,

    ich hab ne Idee (oder zwei :):
    -mehrere Konten:
    eins fürs Taschengeld, eins fürs Girokonto,...beliebig eben
    - automatisierte eingangs- und ausgangsbuchungen (modul ala cron)
    neue Ini anlegen für automatische Buchungen, z.B. Taschengeld, das man monatlich bekommt.
    die Ini dann ausgelesen und mtl. system-buchungen erstellt, die dann auch gesondert abgefragt werden (beim prgrammstart bzw. zur Laufzeit )
    so ist dann die monatliche Taschengeldzahlung sowie das Zeitschriftenabo mit weniger Arbeit verbunden.
    - csv-Import für Buchungen
    viele Banken bieten zum Online-Banking auch den Umsatz-SCV CSV Download an, wär doch ganz praktisch.

    jetzt langts aber, schliesslich ists ja dein Programm, also los, überleg was du brauchst ;)
    ich machs nur wieder kompliziert ;o)

  • Warum den Kontostand in die registry schreiben? finde ich unschön.

    Ansonsten ganz witzig.

    ---
    In "Independence Day" konnten die Windows-Erdcomputer problemlos mit denen der Außerirdischen kommunizieren. Was sagt uns das über unseren lieben Bill Gates? :D
    ---