2012-04-02 11 views
0

Wie erstellt man jinternframes, welche Aktion voneinander abhängt? Beispiel Angenommen, ich habe zwei interne Rahmen, wenn ich einen Rahmen minimiere, sollte der zweite Rahmen den Rest der Jdesktopane und umgekehrt einnehmen. Mehr im Detail können wir Eclipse als Beispiel nehmen, dessen Work Space Frame und Programm Space Frame schreiben, die voneinander abhängen. kann jemand helfen, was ist die Logik dahinter? Vielen Dank im Voraus für die AntwortenGUI Jinternal frame

Antwort

0

Sie können jedem Rahmen einen WindowListener hinzufügen und auf Änderungen des internen Rahmenstatus warten.

final JInternalFrame f1, f2; 
//... 
f1.addInternalFrameListener(new InternalFrameAdapter() { 
    void internalFrameIconified(InternalFrameEvent e) { 
     // respond to iconfiy 
    } 
}); 
f2.addInternalFrameListener(new InternalFrameAdapter() { 
    void internalFrameIconified(InternalFrameEvent e) { 
     // respond to iconify 
    } 
}); 

Was tatsächlich iconifying den internen Rahmen, müssen Sie den Desktop-Manager verwenden, um Ihren JDesktopPane entsprechen, um die Aktion auszuführen:

JDesktopPane desktop; 
DesktopManager mgr = desktop.getDesktopManager(); 
mgr.iconifyFrame(frame); 
+0

ich verstand, dass ich brauche auf WindowStateListener für internen Rahmen zu arbeiten, Kannst du bitte ein kleines Beispiel posten, wie passen sie sich dem Vollbild an, je nachdem, ob andere Bildsymbolisierungen und Dekonifizierungen? – mahi