Hallo,
ich muss gerade im Moment ein Programm basteln, dessen Oberfläche ungefähr so funktionieren muss, wie meine Skizze im Anhang verdeutlichen soll. Das Bildchen ist natürlich stark vereinfacht und soll nur zeigen, worauf ich hinausmöchte.
Nach dem Start öffnet ein großer JFrame (standardmäßig maximiert), sozusagen das Hauptmenü. Darin kann man Vorgänge wählen. Wird ein Vorgang gestartet, soll das Hauptmenü verschwinden und ein neues Fenster öffnet sich. In dem Fenster können dann verschiedene Dinge gemacht werden und ggf. weitere JDialogs modal dazu angezeigt werden.
So weit. So gut.
Jetzt ist aber die Anforderung, dass man nach Beendigung und Schließen dieses Vorgangsfensters wieder zum Hauptmenü - zum Hauptframe - zurückgelangen soll. Von dort aus soll dann der nächste Vorgang aufgerufen werden können (oder man beendet das Programm von dort aus).
Wie könnte ich das am geschicktesten anstellen? Hat jemand einen Rat für mich?
Ich kann kein MDI benutzen oder ein großes Fenster, wo links Explorer-like die Vorgänge sind und rechts der jeweilige Vorgang oder sowas. Es soll von der Funktionsweise schon so sein, wie beschrieben. Ich kann auch nicht einfach den Inhalt des ContentPane des Hauptmenüs austauschen durch den Vorgangskram, weil ich sozusagen annehmen muss, dass ich nicht weiß, was da für Unterprogramme aufgerufen werden.
Ein paar Probleme, die ich dabei habe:
Stehe gerade etwas auf dem Schlauch... Kann mir jemand weiterhelfen?
Danke für eure Hilfe!
Euer
Hank Scorpio
ich muss gerade im Moment ein Programm basteln, dessen Oberfläche ungefähr so funktionieren muss, wie meine Skizze im Anhang verdeutlichen soll. Das Bildchen ist natürlich stark vereinfacht und soll nur zeigen, worauf ich hinausmöchte.
Nach dem Start öffnet ein großer JFrame (standardmäßig maximiert), sozusagen das Hauptmenü. Darin kann man Vorgänge wählen. Wird ein Vorgang gestartet, soll das Hauptmenü verschwinden und ein neues Fenster öffnet sich. In dem Fenster können dann verschiedene Dinge gemacht werden und ggf. weitere JDialogs modal dazu angezeigt werden.
So weit. So gut.
Jetzt ist aber die Anforderung, dass man nach Beendigung und Schließen dieses Vorgangsfensters wieder zum Hauptmenü - zum Hauptframe - zurückgelangen soll. Von dort aus soll dann der nächste Vorgang aufgerufen werden können (oder man beendet das Programm von dort aus).
Wie könnte ich das am geschicktesten anstellen? Hat jemand einen Rat für mich?
Ich kann kein MDI benutzen oder ein großes Fenster, wo links Explorer-like die Vorgänge sind und rechts der jeweilige Vorgang oder sowas. Es soll von der Funktionsweise schon so sein, wie beschrieben. Ich kann auch nicht einfach den Inhalt des ContentPane des Hauptmenüs austauschen durch den Vorgangskram, weil ich sozusagen annehmen muss, dass ich nicht weiß, was da für Unterprogramme aufgerufen werden.
Ein paar Probleme, die ich dabei habe:
- Den schönen modalen JDialog kann ich eigentlich nicht nehmen, weil der nicht maximiert werden kann (soll?).
Sonst ginge das ja sicher ganz gut: Hauptmenü ausblenden -> Modal dazu das neue Fenster starten -> Hauptmenü pausiert solange, wie modales Fenster aktiv -> Bei Rückkehr des Kontrollflusses zum Hauptmenü einfach dieses wieder sichtbar schalten - Wenn ich vom Hauptmenü-Frame aus den Vorgangs-Frame erzeuge und vom Vorgangs-Frame aus wieder einen Hauptmenü-Frame usw., läuft sicher irgendwann der Stack über, oder?
- Wenn ich eine große Ereignisschleife (*schauder* *uäääh*) baue (Hauptmenü anzeigen > Abwarten, bis geschlossen > Auswahl abfragen > Vorgang starten > Abwarten, bis geschlossen > Zurück zum Anfang), müsste ich in der Ereignisschleife irgendwie auf die Beendigung der Frames warten... :-? Kann ja schlecht
Code:while (!frameXY.isFinished()) { }
Stehe gerade etwas auf dem Schlauch... Kann mir jemand weiterhelfen?
Danke für eure Hilfe!
Euer
Hank Scorpio