Anfängerfrage: Klasse greift auf Methode anderer Klasse zu
Verfasst: Donnerstag 18. März 2021, 11:26
Hallo Foristen,
Ich habe leider nur noch WirrWarr im Kopf. Und je mehr ich lese, desto verwirrter bin ich. Dies ist mein erstes Projekt mit einer objektorientierten Programmiersprache. Folgende Aufgabe:
Die Aufgabe ist ganz grob vereinfacht: Durch ein Kommando von außen (TCPIP-Kommunikation) wird eine GUI geupdatet (es ist ein TKinter-Label).
Nun habe ich für das Graphical User Interface (GUI) und der eigentlichen Kommunikation und Verarbeitung jeweils eine Klasse erstellt und daraus Instanzen im "Main"-Programm erzeugt.
Das Kommando von Außen, zum Beispiel SHOW:TEXT:"ABCD" kommt in der Verarbeitungsklasse an.
Aus dieser Klasse heraus soll nun das Label der GUI den übertragenen Text anzeigen. Aber ich kann nicht aus der Verarbeitungsklasse auf die Methode "ShowText" der GUI-Klasse zugreifen.
Laut meinem Verständnis ist das ja auch nicht möglich, da die Verarbeitungsklasse ja nicht weiß, welche Instanz der GUI Klasse gemeint ist.
In meinem Main-Programm kann ich auf alle Variablen und Methoden der Klassen zugreifen. Können Klassen nicht direkt auf andere Methoden und Variablen einer anderen Klasse bzw, Instanz zugreifen, sondern muss das immer über den Umweg des MAIN-Programms außerhalb der Klassen erfolgen? Wenn die Antwort "Nein" lautet, wie kann man das lösen?
P.S.: Da mein Programm derzeit sehr verbastelt ist, habe ich auf Codebeispiele verzichtet. Kommunikation, TKinter und die Sachen drum herum laufen alle schon ganz gut.
Nur die Kommunikation zwischen den einzelnen Bereichen bekomme ich nicht hin.
Danke Vorab, blutec
Ich habe leider nur noch WirrWarr im Kopf. Und je mehr ich lese, desto verwirrter bin ich. Dies ist mein erstes Projekt mit einer objektorientierten Programmiersprache. Folgende Aufgabe:
Die Aufgabe ist ganz grob vereinfacht: Durch ein Kommando von außen (TCPIP-Kommunikation) wird eine GUI geupdatet (es ist ein TKinter-Label).
Nun habe ich für das Graphical User Interface (GUI) und der eigentlichen Kommunikation und Verarbeitung jeweils eine Klasse erstellt und daraus Instanzen im "Main"-Programm erzeugt.
Das Kommando von Außen, zum Beispiel SHOW:TEXT:"ABCD" kommt in der Verarbeitungsklasse an.
Aus dieser Klasse heraus soll nun das Label der GUI den übertragenen Text anzeigen. Aber ich kann nicht aus der Verarbeitungsklasse auf die Methode "ShowText" der GUI-Klasse zugreifen.
Laut meinem Verständnis ist das ja auch nicht möglich, da die Verarbeitungsklasse ja nicht weiß, welche Instanz der GUI Klasse gemeint ist.
In meinem Main-Programm kann ich auf alle Variablen und Methoden der Klassen zugreifen. Können Klassen nicht direkt auf andere Methoden und Variablen einer anderen Klasse bzw, Instanz zugreifen, sondern muss das immer über den Umweg des MAIN-Programms außerhalb der Klassen erfolgen? Wenn die Antwort "Nein" lautet, wie kann man das lösen?
P.S.: Da mein Programm derzeit sehr verbastelt ist, habe ich auf Codebeispiele verzichtet. Kommunikation, TKinter und die Sachen drum herum laufen alle schon ganz gut.
Nur die Kommunikation zwischen den einzelnen Bereichen bekomme ich nicht hin.
Danke Vorab, blutec