You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.7 KiB
44 lines
1.7 KiB
import tkinter |
|
import customtkinter |
|
from frames import (SidebarFrame, PersonFrame, VermögenFrame, |
|
ProjekteFrame, KategorieFrame, EinträgeFrame, |
|
ÜbersichtFrame, ExportFrame, ExampleFrame) |
|
# Main application |
|
class App(customtkinter.CTk): |
|
|
|
def __init__(self): |
|
super().__init__() |
|
|
|
# Container to pack different windows of the app into |
|
container = customtkinter.CTkFrame(self) |
|
container.pack(expand=True, fill='both') |
|
container.grid_rowconfigure(0, weight=1) |
|
container.grid_columnconfigure(0, weight=1) |
|
# Sidebar Creation |
|
self.sidebar = SidebarFrame(container, self) |
|
self.sidebar.grid(row=0, column=0, padx=20, pady=20) |
|
# Frame Creation |
|
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) |
|
self.frames['exampleFrame'] = ExampleFrame(container, self) |
|
|
|
for F in (self.frames): |
|
|
|
self.frames[F].grid(row = 0, column = 1, sticky='nsew') |
|
|
|
self.show_frame('personFrame') |
|
|
|
def show_frame(self, page_class): |
|
frame = self.frames[page_class] |
|
frame.tkraise() |
|
|
|
|
|
if __name__ == '__main__': |
|
app = App() |
|
app.mainloop() |