Python programmieren, Objektorientierte Programmierung in verschiedenen Dateien mit Klassen?
Hey,
ich lerne aktuell Python und habe angefangen einen Chatbot zu programmieren.
Nun will ich anfangen mir anzugewöhnen in verschiedenen Dateien mit Objektorientierter Programmierung zu programmieren bzw. das erstmal zu lernen.
Mein Gedanke in meinem Code ist z.B. eine Klasse WindowTemplate zu erstellen und diese als Blaupause ohne vorgegebene Werte zu definieren.
An Sich gelingt mir das auch aber ich habe Probleme von einer anderen Klasse aus einer anderen Datei darauf zuzugreifen und die Werte für wie zum Beispiel Größe oder Titel zu übergeben.
Ich würde mich freuen wenn hier mal jemand der etwas Erfahrung hat drauf schauen könnte und mich zumindest mal in die richtige Richtung leiten kann. :)
Viele Dank!
main.py
Fehlermeldung ist diese:
Traceback (most recent call last):
line 17, in <module>
app = Main()
^^^^^^
line 9, in __init__
self.main_window.set_size("1680", "900")
line 10, in set_size
self.window_size.geometry(f"{width}x{height}")
^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'geometry'
import view
import customtkinter as ctk
class Main(ctk.CTk):
def __init__(self):
super().__init__()
self.main_window = view.WindowTemplate()
self.main_window.set_size("1680", "900")
self.main_window.set_title("YourTerminal")
def my_mainloop(self):
self.mainloop()
if __name__ == "__main__":
app = Main()
app.my_mainloop()
view.py
import customtkinter as ctk
class WindowTemplate:
def __init__(self, window_size=None, window_title=None):
self.window_size = window_size
self.window_title = window_title
def set_size(self, width, height):
self.window_size.geometry(f"{width}x{height}")
def set_title(self, title):
self.window_title.title(title)