Ghost_Rider_R
Lieutenant
- Registriert
- Nov. 2009
- Beiträge
- 786
Hallo zusammen,
ich hätte da mal eine ganz allgemeine Frage. Wie löst man am besten zyklische Abhängigkeiten auf?
z.B.:
Mal ein ganz simples Beispiel:
Ich habe eine GUI mit einem Button. Sobald dieser gedrückt wird ruft er in der Klasse Controller die Methode Berechnen(int wert1, wert2); auf. Wenn die Berechnung fertig ist möchte der Controller das Ergebnis auf ein Label der GUI schreiben. Bis dahin eigentlich kein Problem.
In meinem konkreten Beispiel dauert die Berechnung aber mehrere Sekunden und ich will die GUI nicht einfrieren lassen. Also starte ich die Methode in einem eigenen Thread und stelle den Button so lange auf Disabled, damit er nicht zweimal gedrückt werden kann. Dafür muss der Controller aber am Ende selbst die GUI kennen um dort rein zu schreiben und am Ende den Button wieder auf Enabled setzen.
Wie löst man denn solche Sachen am besten auf?
LG Ghost
ich hätte da mal eine ganz allgemeine Frage. Wie löst man am besten zyklische Abhängigkeiten auf?
z.B.:
>>GUI macht was mit Controller und Controller macht was mit GUI<<<
Mal ein ganz simples Beispiel:
Ich habe eine GUI mit einem Button. Sobald dieser gedrückt wird ruft er in der Klasse Controller die Methode Berechnen(int wert1, wert2); auf. Wenn die Berechnung fertig ist möchte der Controller das Ergebnis auf ein Label der GUI schreiben. Bis dahin eigentlich kein Problem.
In meinem konkreten Beispiel dauert die Berechnung aber mehrere Sekunden und ich will die GUI nicht einfrieren lassen. Also starte ich die Methode in einem eigenen Thread und stelle den Button so lange auf Disabled, damit er nicht zweimal gedrückt werden kann. Dafür muss der Controller aber am Ende selbst die GUI kennen um dort rein zu schreiben und am Ende den Button wieder auf Enabled setzen.
Wie löst man denn solche Sachen am besten auf?
LG Ghost