diff --git a/app.py b/app.py index 207c79a..bb08126 100644 --- a/app.py +++ b/app.py @@ -1,7 +1,8 @@ import tkinter import customtkinter -from frames import SidebarFrame, PersonFrame, VermögenFrame - +from frames import (SidebarFrame, PersonFrame, VermögenFrame, + ProjekteFrame, KategorieFrame, EinträgeFrame, + ÜbersichtFrame, ExportFrame) # Main application class App(customtkinter.CTk): @@ -19,8 +20,14 @@ class App(customtkinter.CTk): self.frames = {} self.frames['personFrame'] = PersonFrame(container, self) self.frames['vermögenFrame'] = VermögenFrame(container, self) + self.frames['projekteFrame'] = ProjekteFrame(container, self) + self.frames['kategorieFrame'] = KategorieFrame(container, self) + self.frames['einträgeFrame'] = EinträgeFrame(container, self) + self.frames['übersichtFrame'] = ÜbersichtFrame(container, self) + self.frames['exportFrame'] = ExportFrame(container, self) - for F in ('personFrame', 'vermögenFrame'): + for F in ('personFrame', 'vermögenFrame', 'projekteFrame', + 'kategorieFrame', 'einträgeFrame', 'übersichtFrame', 'exportFrame'): self.frames[F].grid(row = 0, column = 1, sticky='nsew') diff --git a/frames.py b/frames.py index d7c5db1..cdf15da 100644 --- a/frames.py +++ b/frames.py @@ -3,19 +3,96 @@ import tkinter.messagebox import customtkinter + + + + class VermögenFrame(customtkinter.CTkFrame): - def __init__(self, parent, controller, *args, **kwargs): + def __init__(self, parent, controller): customtkinter.CTkFrame.__init__(self, parent) #super().__init__(*args, **kwargs) # create textbox - self.textbox = customtkinter.CTkTextbox(self, width=250) - self.textbox.grid(row=0, column=1, padx=(20, 0), pady=(20, 0), sticky="nsew") + self.textbox = customtkinter.CTkTextbox(self, width=600, height=100) + self.textbox.grid(row=0, column=0, padx=(20, 0), pady=(20, 0), sticky="nsew") # set default values - self.textbox.insert("0.0", "CTkTextbox\n\n" + "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.\n\n" * 20) + self.textbox.insert("0.0", "Vermögen\n\n" + 'Im Vermögen fenster kannst du das Vermögen der aktuellen Person anpassen. Füge neue Konten \n mit Guthaben hinzu.') + self.textbox.configure(state='disabled') + +class ProjekteFrame(customtkinter.CTkFrame): + def __init__(self, parent, controller): + customtkinter.CTkFrame.__init__(self, parent) + #super().__init__(*args, **kwargs) + # create textbox + self.textbox = customtkinter.CTkTextbox(self, width=600, height=100) + self.textbox.grid(row=0, column=0, padx=(20, 0), pady=(20, 0), sticky="nsew") + + # set default values + self.textbox.insert("0.0", "Projekte\n\n" + 'Im Projekte Fenster kannst du Projekte erstellen mit denen du Einnahmen und Ausgaben Thematisch zuordnen kannst.') + self.textbox.configure(state='disabled') + +class KategorieFrame(customtkinter.CTkFrame): + def __init__(self, parent, controller): + customtkinter.CTkFrame.__init__(self, parent) + #super().__init__(*args, **kwargs) + # create textbox + self.textbox = customtkinter.CTkTextbox(self, width=600, height=100) + self.textbox.grid(row=0, column=0, padx=(20, 0), pady=(20, 0), sticky="nsew") + + # set default values + self.textbox.insert("0.0", "Kategorien\n\n" + 'Hier kannst du Kategorien erstellen um deine Einnahmen und Ausgaben noch besser nachvollziehen zu können.') + self.textbox.configure(state='disabled') + +class EinträgeFrame(customtkinter.CTkFrame): + def __init__(self, parent, controller): + customtkinter.CTkFrame.__init__(self, parent) + #super().__init__(*args, **kwargs) + # create textbox + self.textbox = customtkinter.CTkTextbox(self, width=600, height=100) + self.textbox.grid(row=0, column=0, padx=(20, 0), pady=(20, 0), sticky="nsew") + + # set default values + self.textbox.insert("0.0", "Einträge\n\n" + 'Im Einträge Fenster kannst du Einträge machen. Einträge sind entweder Aussgaben oder Einnahmen einer bestimmten Person.') + self.textbox.configure(state='disabled') + +class ÜbersichtFrame(customtkinter.CTkFrame): + def __init__(self, parent, controller): + customtkinter.CTkFrame.__init__(self, parent) + #super().__init__(*args, **kwargs) + # create textbox + self.textbox = customtkinter.CTkTextbox(self, width=600, height=100) + self.textbox.grid(row=0, column=0, padx=(20, 0), pady=(20, 0), sticky="nsew") + + # set default values + self.textbox.insert("0.0", "Übersicht\n\n" + 'Hier kanst du dir eine Übersicht über deine Ausgaben und Einnahmen verschaffen. Alle eingetragenen Daten werden hier für dich einfach nachvollziehbar angezeigt.') + self.textbox.configure(state='disabled') + +class ExportFrame(customtkinter.CTkFrame): + def __init__(self, parent, controller): + customtkinter.CTkFrame.__init__(self, parent) + #super().__init__(*args, **kwargs) + # create textbox + self.textbox = customtkinter.CTkTextbox(self, width=600, height=100) + self.textbox.grid(row=0, column=0, padx=(20, 0), pady=(20, 0), sticky="nsew") + + # set default values + self.textbox.insert("0.0", "Export\n\n" + 'Wie der Name vermuten lässt kannst du hier deine Datenbank in verschiedenen Formen Exportieren lassen.') + self.textbox.configure(state='disabled') class PersonFrame(customtkinter.CTkFrame): - def __init__(self, parent, controller, *args, **kwargs): + def __init__(self, parent, controller): + customtkinter.CTkFrame.__init__(self, parent) + #super().__init__(*args, **kwargs) + # create textbox + self.textbox = customtkinter.CTkTextbox(self, width=600, height=100) + self.textbox.grid(row=0, column=0, padx=(20, 0), pady=(20, 0), sticky="nsew") + + # set default values + self.textbox.insert("0.0", "Person\n\n" + 'Hier kannst du neue Personen erstellen, und die aktuell aktive Person') + self.textbox.configure(state='disabled') + +class ExampleFrame(customtkinter.CTkFrame): + def __init__(self, parent, controller): customtkinter.CTkFrame.__init__(self, parent) #super().__init__(*args, self, **kwargs) # create main entry and button @@ -131,19 +208,19 @@ class SidebarFrame(customtkinter.CTkFrame): self.sidebar_button_2 = customtkinter.CTkButton(self.sidebar_frame, text="Vermögen", command=lambda: controller.show_frame('vermögenFrame')) self.sidebar_button_2.grid(row=2, column=0, padx=20, pady=10) # Button Projekte - self.sidebar_button_3 = customtkinter.CTkButton(self.sidebar_frame, text="Projekte", command=self.sidebar_button_event) + self.sidebar_button_3 = customtkinter.CTkButton(self.sidebar_frame, text="Projekte", command=lambda: controller.show_frame('projekteFrame')) self.sidebar_button_3.grid(row=3, column=0, padx=20, pady=10) # Button Kategorien - self.sidebar_button_4 = customtkinter.CTkButton(self.sidebar_frame, text="Kategorien", command=self.sidebar_button_event) + self.sidebar_button_4 = customtkinter.CTkButton(self.sidebar_frame, text="Kategorien", command=lambda: controller.show_frame('kategorieFrame')) self.sidebar_button_4.grid(row=4, column=0, padx=20, pady=10) # Button Einträge - self.sidebar_button_4 = customtkinter.CTkButton(self.sidebar_frame, text="Einträge", command=self.sidebar_button_event) + self.sidebar_button_4 = customtkinter.CTkButton(self.sidebar_frame, text="Einträge", command=lambda: controller.show_frame('einträgeFrame')) self.sidebar_button_4.grid(row=6, column=0, padx=20, pady=10) # Button Übersicht - self.sidebar_button_5 = customtkinter.CTkButton(self.sidebar_frame, text="Übersicht", command=self.sidebar_button_event) + self.sidebar_button_5 = customtkinter.CTkButton(self.sidebar_frame, text="Übersicht", command=lambda: controller.show_frame('übersichtFrame')) self.sidebar_button_5.grid(row=7, column=0, padx=20, pady=10) # Button Export - self.sidebar_button_6 = customtkinter.CTkButton(self.sidebar_frame, text="Export", command=self.sidebar_button_event) + self.sidebar_button_6 = customtkinter.CTkButton(self.sidebar_frame, text="Export", command=lambda: controller.show_frame('exportFrame')) self.sidebar_button_6.grid(row=8, column=0, padx=20, pady=10) # Apperance Mode Label